Не работает касса WooCommerce: как это исправить
Опубликовано: 2020-12-26У вас проблемы со страницей оформления заказа? Ваша касса WooCommerce не работает должным образом? Мы вас прикрыли. В этом руководстве вы узнаете , как исправить наиболее распространенные проблемы на странице оформления заказа, чтобы ваш магазин заработал в кратчайшие сроки .
Каждый владелец магазина знает, что оформление заказа — самая важная страница для магазина WooCommerce, потому что это шаг, на котором вы закрываете продажу. Тем не менее, это также одна из страниц, на которой наблюдается самый высокий уровень отказа от корзины. Исследования показывают, что большинство покупателей отказываются от оформления заказа из-за дополнительных затрат, потому что это слишком долго или сложно, или если сайт не кажется заслуживающим доверия.
Мы уже видели, как настроить оформление заказа и различные стратегии оптимизации оформления заказа в WooCommerce. Ни для кого не секрет, что оптимизированная касса поможет вам повысить конверсию и увеличить продажи. Если вы потратите время на его полировку, это может оказать большое влияние на ваш интернет-магазин.
Однако это легче сказать, чем сделать. Что-то может пойти не так и создать проблемы на странице оформления заказа, которые могут серьезно повлиять на ваш бизнес. Итак, в этом руководстве мы научим вас различным способам устранения возможных причин и решения проблем, когда ваша проверка WooCommerce работает неправильно .
Оплата WooCommerce не работает? Как исправить распространенные проблемы
Многие вещи могут привести к тому, что касса не будет работать должным образом. В этом разделе мы рассмотрим решения наиболее распространенных проблем, чтобы помочь вам как можно скорее запустить свой магазин.
1. Деактивируйте плагины и темы
Наиболее распространенная проблема, из-за которой проверка в WooCommerce перестает работать, — это тема или плагин, которые создают конфликты . Самое эффективное решение — деактивировать все плагины и посмотреть, какой из них вызывает проблему.
Вы можете проверить это, перейдя к оформлению заказа, щелкнув правой кнопкой мыши в любом месте страницы и выбрав Inspect > Console . Если вы видите ошибку Javascript, проблема возникает из-за некоторых ваших плагинов или тем. Чтобы проверить, какой плагин или тема создает конфликт, у вас есть два варианта:
- Массовая деактивация плагинов
- Используйте плагин проверки работоспособности
ПРИМЕЧАНИЕ . Перед началом работы мы рекомендуем вам сделать полную резервную копию вашего сайта на случай, если что-то пойдет не так. Несмотря на то, что деактивация и повторная активация плагинов не должны вызывать никаких проблем, наличие резервной копии избавит вас от большой головной боли, если это произойдет.
В обоих вариантах идея состоит в том, чтобы на мгновение отключить все плагины (кроме WooCommerce) и активировать тему по умолчанию для вашего пользовательского сеанса. Таким образом, вы можете активировать плагины один за другим и проверить, какой из них вызывает конфликт. Если вы используете проверку работоспособности, убедитесь, что вы вошли в режим устранения неполадок из /wp-admin/index.php?page=health-check&tab=troubleshoot . Кроме того, имейте в виду, что для правильной работы этого инструмента требуется тема по умолчанию, такая как Twenty Seventeen или Storefront.
2. Бесконечная загрузка страницы оформления заказа WooCommerce
Еще одна распространенная проблема, из-за которой перестает работать оформление заказа WooCommerce, — это бесконечная загрузка . В большинстве случаев проблема связана с AJAX. Страница «Просмотр заказа» загружает способы оплаты или итоговые суммы через AJAX, и при этом отображается счетчик загрузки.
Однако, если есть проблема, раздел может не загрузиться или счетчик может остаться без загрузки страницы. Если это ваш случай, сначала посмотрите WooCommerce > Состояние системы и проверьте ошибки.
Вот некоторые из решений наиболее распространенных проблем:
Ошибка AJAX, вызванная настройками WordPress
Распространенная проблема, из-за которой проверка WooCommerce перестает работать, заключается в том, что адрес WordPress (URL) и адрес сайта (URL) не совпадают. Запросы AJAX работают только в одном домене, поэтому эти два URL-адреса должны совпадать.
Чтобы проверить, не является ли это причиной ваших проблем, на панели инструментов WordPress перейдите в « Настройки» > «Основные» и убедитесь, что поля «Адрес WordPress» (URL) и «Адрес сайта» (URL) совпадают.
Конфликты с темами и плагинами
Как упоминалось ранее, конфликты между плагинами и темами являются одной из наиболее распространенных проблем, из-за которых проверка WooCommerce перестает работать. Чтобы проверить, так ли это, перейдите на страницу с проблемами, щелкните правой кнопкой мыши и выберите Inspect > Console . Если вы видите ошибку JavaScript, проблема, вероятно, вызвана темой или плагином.
Если это так, деактивируйте все плагины и темы, следуя шагам, описанным в пункте 1.
Проблемы, вызванные транзакционными электронными письмами
Иногда транзакционные электронные письма, связанные с оформлением заказа, могут привести к тому, что оформление заказа перестанет работать в WooCommerce. Если вы подозреваете, что это может быть проблемой, вы можете включить фильтр для отправки электронных писем после завершения заказа. Это ускорит процесс и может решить проблему.
add_filter( 'woocommerce_defer_transactional_emails', '__return_true' );
Ограничение памяти WordPress
Ограничение памяти WP также может создавать проблемы и препятствовать правильной работе проверки WooCommerce. Когда это произойдет, вы увидите одно из этих сообщений на своем сайте.
Фатальная ошибка: разрешенный размер памяти 33554432 байт исчерпан (попытка выделить 2356915 байт) в /home4/xxx/public_html/wp-includes/plugin.php в строке xxx
Или
Ошибка 413: объект запроса слишком велик
Есть два варианта решения этой проблемы. Ты сможешь:
- Увеличьте память самостоятельно
- Свяжитесь с вашей хостинговой компанией
Если у вас есть навыки программирования и вы хотите исправить это самостоятельно, вы можете попробовать любой из этих трех способов:
- Отредактируйте файл wp-config.php.
- Файл PHP.ini
- файл .htaccess
Давайте посмотрим, как найти и отредактировать каждый из них. Совет для профессионалов: следующие методы включают редактирование основных файлов WordPress. Это означает, что вы можете сломать свой сайт, если что-то пойдет не так, поэтому перед его редактированием мы рекомендуем вам создать полную резервную копию вашего сайта. Если вы не знаете, как это сделать, следуйте этому руководству.
А) Отредактируйте файл wp-config.php
Чтобы получить доступ к файлу wp-config.php и отредактировать его, у вас есть два варианта:
- cPanel
- FTP-клиент
Если вы попробуете опцию cPanel , вы найдете файл wp-config.php в разделе « Диспетчер файлов» > «public_html» . С другой стороны, если вы используете FTP-клиент, файл wp-config.php находится в папке public_html . Независимо от того, какой метод вы используете, вы должны загрузить файл, отредактировать его и снова загрузить.
Чтобы увеличить лимит памяти WP, добавьте следующий код перед строкой, в которой говорится , что все, прекратите редактирование! Удачного ведения блога .
определить('WP_MEMORY_LIMIT', '256M');
Этот скрипт в основном говорит WordPress увеличить лимит памяти PHP до 256 МБ. Если это не сработает, вы можете увеличить ограничение до 512 МБ, но в большинстве случаев 256 МБ должно быть достаточно.
ПРИМЕЧАНИЕ . Стоит отметить, что память WordPress может отличаться от памяти сервера, поэтому мы рекомендуем вам установить это ограничение независимо от настроек памяти вашего сервера.
В качестве альтернативы, если вам неудобно редактировать файлы ядра, вы можете обратиться в свою хостинговую компанию.
Б) Отредактируйте файл PHP.ini
Еще один способ увеличить лимит памяти в WordPress — отредактировать файл PHP.ini . Для этого перейдите в папку public_html или туда, где вы установили WordPress, и найдите файл с именем php.ini . Вставьте туда следующую строку кода, чтобы увеличить ограничение до 256 МБ.
memory_limit = 256M
C) Отредактируйте файл .htaccess
Третий способ увеличить лимит памяти WP и устранить проблему, которая может привести к прекращению работы WooCommerce, — отредактировать файл .htaccess . Этот файл находится в корневой папке, но если вы установили WordPress на свой основной домен, вы найдете файл htaccess в папке public_html . Это скрытый файл, поэтому убедитесь, что вы включили скрытые файлы.
Как только вы найдете файл .htaccess, вставьте этот код, чтобы увеличить лимит памяти:
php_value memory_limit 256M
Ошибка вызова AJAX, вызванная файлом index.html
Еще одна распространенная проблема, которая может привести к тому, что страница оформления заказа WooCommerce перестанет работать правильно, — это недопустимый ответ на вызов AJAX , вызванный файлом index.html .
Чтобы устранить эту проблему, перейдите на вкладку XHR (XMLHttpRequest) в консоли разработчика и проверьте ответ. Если ответ представляет собой HTML, а не JSON, проблема, вероятно, вызвана файлом index.html в корневом каталоге.
Самый простой способ исправить это — удалить файл index.html . Однако, если вы не хотите удалять какие-либо файлы, вы можете настроить директиву indexes в настройках сервера и установить приоритет index.php над index.html .
Стоит отметить, что некоторые плагины кэширования также могут добавлять HTML в ответ JSON, поэтому это также может быть причиной проблемы, если вы используете один из этих инструментов.
3. Электронные письма с подтверждением не содержат ссылок для скачивания
Еще одна распространенная проблема WooCommerce, которая может доставить вам много неприятностей, — это когда электронные письма с подтверждением, которые вы отправляете после покупки клиентом загружаемого продукта, не содержат ссылок для скачивания. Как вы можете себе представить, это может вызвать множество жалоб, потому что пользователи не могут загрузить то, что они только что купили.
Эта проблема вызвана тем, что в вашей базе данных отсутствует таблица SQL wp_woocommerce_downloadable_product_permissions . Это происходит потому, что когда вы активируете WooCommerce на своем сайте, в вашу базу данных добавляются некоторые таблицы SQL. Однако этот процесс иногда может завершиться ошибкой, если префикс таблиц WordPress SQL, хранящийся в файле wp-config.php , слишком длинный.
Чтобы решить эту проблему, вам нужно переименовать префикс таблицы WordPress SQL. Имена могут содержать более 64 символов, поэтому мы рекомендуем выбирать префикс, содержащий не более 20-25 символов.
Чтобы изменить префиксы таблиц WordPress SQL, у вас есть два варианта:
- Используйте плагины, такие как Change Table Prefix или Brozzme DB Prefix. Эти инструменты давно не обновлялись, но они по-прежнему выполняют свою работу.
- Переименуйте таблицы вручную. Для этого вам нужно будет использовать phpMyAdmin, уменьшить префикс таблицы и обновить значение префикса в wp-config.php . Затем деактивируйте WooCommerce и повторно активируйте его, чтобы принудительно создать отсутствующие таблицы SQL.
ПРИМЕЧАНИЕ . Независимо от выбранного вами метода, мы рекомендуем вам создать резервную копию вашего сайта перед запуском.
4. Страницы не отображаются в WooCommerce
Если у вас есть проблемы со страницами, на которых не отображается контент. Это может быть вызвано несколькими причинами, но в большинстве случаев устранить проблему помогут следующие действия:
- Создайте новую страницу, добавьте правильный шорткод и опубликуйте ее.
- Затем перейдите в WooCommerce > Настройки > Общие , выберите только что созданную страницу и нажмите Сохранить .
5. Фатальная ошибка: вызов неопределенной функции is_woocommerce_active()
Если вы столкнулись с этой проблемой и страница оформления заказа не работает в вашем магазине WooCommerce, есть две возможные причины:
- Устаревшие плагины
- Сторонние темы
Чтобы решить эту проблему, сначала убедитесь, что все ваши плагины обновлены. Если это не устранит ошибку, деактивируйте свою тему, переключитесь на Twenty Sixteen и снова активируйте плагин. Затем вы сможете вернуться к предпочитаемой теме.
6. Кнопки «Перейти к оформлению заказа» и «Оплатить через PayPal» не работают.
Если у вас возникли проблемы с кнопками «Перейти к оформлению заказа» и «Оплатить через PayPal», и проблема не вызвана конфликтом плагина или темы, вы можете решить ее с помощью CSS. Иногда некоторые контейнеры < div> имеют набор с плавающей запятой, что может вызвать проблемы .
Чтобы исправить это, вы можете очистить плавающие элементы после их завершения или установить overflow:hidden для содержащего < div> . Таким образом, вы отсекаете переполнение и скрываете остальную часть содержимого.
Чтобы удалить плавающие элементы из контейнера <div> , на панели инструментов WordPress перейдите в раздел « Внешний вид» > «Настроить» > «Дополнительный CSS» и вставьте следующий код:
.e1120-2.x-container, .e1120-10.x-container { clear: both; }
Кроме того, вы можете вставить код в файл style.css вашей дочерней темы. Если у вас нет дочерней темы, вы можете создать ее или использовать один из этих плагинов.
7. ssl_error_rx_record_too_long
Если ваша страница оформления заказа WooCommerce не работает и вы видите следующую ошибку:
SSL получил запись, длина которой превышает максимально допустимую. (Код ошибки: ssl_error_rx_record_too_long)
Неправильная конфигурация SSL/apache. Если это ваш случай, вам нужно связаться с вашим хостинг-провайдером, потому что это не проблема WooCommerce. В качестве альтернативы, если вам не нужно использовать SSL, вы можете отключить параметр Force SSL в WooCommerce > Settings .
Кроме того, вы можете отключить параметр « Принудительная безопасная проверка » на вкладке « Оформить заказ ».
8. Кнопка "Оформить заказ" не работает
Если кнопка «Разместить заказ » на странице оформления заказа не работает, возможно, существует конфликт темы или плагина . Просто следуйте инструкциям, описанным выше, и вы быстро запустите свой магазин.
9. ошибки session_start
Если вы видите подобные предупреждения в шапке своего сайта, проблема связана с вашим сервером.
Предупреждение: session_start() [function.session-start]: open(xxx) не удалось: разрешение отклонено (13) в xxx/wp-content/plugins/woocommerce/woocommerce.php в строке XX
Это вызвано одной из этих двух вещей:
- Сессии PHP настроены неправильно
- Каталог сеансов (/ tmp ) недоступен для записи
Чтобы исправить это, вам нужно связаться с вашим хостинг-провайдером.
Что делать, если касса перестала работать?
Проблемы на странице оформления заказа — худший кошмар для любого интернет-магазина. Однако, если у вас возникли проблемы с кассой, не паникуйте. Различные проблемы могут иметь разное происхождение, поэтому может быть трудно понять, что вызывает проблему.
В большинстве случаев виноват конфликт плагинов или тем, поэтому попробуйте сначала деактивировать все ваши плагины и темы , как описано в пункте 1. Если это не решит проблему, попробуйте различные решения, которые мы рассмотрели в этом руководстве, в зависимости от тип сообщения об ошибке, которое вы получаете. Если вы не нашли решение, вы можете ознакомиться с руководством по устранению неполадок WooCommerce.
Вывод
В целом, несколько причин могут привести к тому, что касса перестанет работать в WooCommerce . В этом руководстве мы показали вам несколько решений для устранения наиболее распространенных проблем, с которыми сталкивается большинство пользователей.
Некоторые из этих проблем решить проще, чем другие, но в большинстве случаев вы можете решить их, не обращаясь к своему хостинг-провайдеру.
Не могли бы вы исправить проблемы со страницей оформления заказа и восстановить работоспособность вашего магазина? Столкнулись с проблемами, которые не описаны в этом руководстве? Дайте нам знать в комментариях ниже! Мы будем рады помочь вам!