/ Сайтостроение / Wordpress / Различные ошибки и их решения

Различные ошибки и их решения

HIT

29.09.2015

1398

В данной статье будут разбираться различные ошибки на сайте, конфликты скриптов и варианты их решения.

Не обновляются плагины wordpress (долго пытаются обновится, но ничего не происходит) + некоторые плагины работают некоректно.

Решение: изменение версии php c php5+APC на php5.3(APC)

Иногда скрипты jquery могут конфликтовать, выдавая ошибки и блокируя работу друг друга

Решение: если скрипт должен воздействовать на конкретный блок, а его в данном шаблоне нет — скрипт может выдавать ошибку. Надо обернуть данный скрипт в условие if($(«div»).is(«#share-pannel»)) { скрипт }.

Циклические ссылки

Обнаружены циклические ссылки. Сайт выполнил переадресацию слишком много раз..

Решение: надо проверить файл htacces: включен ли модуль mod_rewrhite, нет ли каких-то редиректов. Проверить установлен ли на сайте плагин для редиректа.

Не отключается лайтбокс Woocommerce

Поставил плагин FancyBox, при этом хотел отключить стандартный плагин Woocommerce. Для этого снял галку в настройках — не помогло. Данный скрипт для того чтобы полностью отключить лайтбокс WC и все его стили.

//DISABLE WOOCOMMERCE PRETTY PHOTO SCRIPTS
add_action( 'wp_print_scripts', 'my_deregister_javascript', 100 );

function my_deregister_javascript() {
	wp_deregister_script( 'prettyPhoto' );
	wp_deregister_script( 'prettyPhoto-init' );
}

//DISABLE WOOCOMMERCE PRETTY PHOTO STYLE
add_action( 'wp_print_styles', 'my_deregister_styles', 100 );

function my_deregister_styles() {
	wp_deregister_style( 'woocommerce_prettyPhoto_css' );
}

Не загружаются изображения

При загрузке изображений — ошибка HTTP.
Решение: надо на хостинге отключить один из этих модулей (не знаю какой точно): gmagick, http.

No Access-Control-Allow-Origin header

Слетел шрифт, ошибка связана с правами на этот шрифт.
Решение: надо вставить в .htaccess следующее

<IfModule mod_setenvif.c>
<IfModule mod_headers.c>
# mod_headers, y u no match by Content-Type?!
<FilesMatch "\.(gif|png|jpe?g|svg|svgz|ico|webp)$">
SetEnvIf Origin ":" IS_CORS
Header set Access-Control-Allow-Origin "*" env=IS_CORS
</FilesMatch>
</IfModule>
</IfModule>
# ----------------------------------------------------------------------
# Webfont access
# ----------------------------------------------------------------------
<IfModule mod_headers.c>
<FilesMatch "\.(ttf|ttc|otf|eot|woff|woff2|font.css|css|js)$">
Header set Access-Control-Allow-Origin "*"
</FilesMatch>
</IfModule>

Сайт не работает на домашнем компьютере

Ошибка — ERR_CONNECTION_REFUSED

Не работает вывод автора the_author();


Данная функция должна находится внутри конструкции while (have_posts()) : the_post(); / endwhile;

Не загружаются и не обновляются плагины

cURL error 35: error:0D0890A1:asn1 encoding routines:ASN1

Решение: проблема из-за версии php 5.2, вылечилось переходом на версию 5.6

Не отправляются заказы Woocommerce

Часто возникающая проблема — не приходят заказы WC ни на почту администратора, ни на почту заказчика. Обязательно нужно сделать 3 вещи:

  1. Сделать почту домена
  2. Установить и настроить плагин WP Mail SMTP (как это сделать описано в той же статье про почту домена).
  3. Указать созданный ящик домена в настройках Woocommerce/Email’ы в поле Адрес отправителя.

После этого все необходимые заказы/уведомления будут отправляться куда следует.

Fatal error: Uncaught Error: Call to a member function


Данная ошибка встречается в woocommerce при изменении расположения хуков.
Причина: переменная вызывается без объявления глобальной переменной global $post, $product;, нужно ее прописать.

Ошибка поиска тем и плагинов

При попытке добавить (найти) тему или плагин выводится сообщение:
Произошла непредвиденная ошибка. Возможно, что-то не так с сайтом WordPress.org или с настройками вашего сервера. Если проблема не решится, обратитесь на форумы поддержки.

Возможные причины: Подключены ли расширения curl и openssl? Разрешены ли исходящие соединения?

Дефисы превращаются в тире

Если поставить подряд четыре 3 дефиса, то во фронтэнде они выведутся как тире. Проблемы происходят с русскоязычными доменами .рф, т.к. в их кодировке встречается по несколько дефисов подряд, и соответственно пути нарушаются.

Не удаляются товары WC

В какой-то момент перестали удаляться из корзины товары (в корзине и в миникорзине).

Warning: mysqli_real_connect(): Headers and client library minor version mismatch. Headers:50636 Library:100031


Изменил php с версии 7.1 на 7.0. Ошибка ушла, но проблема осталась.

Ошибка JavaScript и Cookies

Sorry, there was an error. Please be sure JavaScript and Cookies are enabled in your browser and try again.

Данная ошибка происходит из-за плагина Spam Shield (АнтиСпам). Причем подобные конфликты с JavaScript и Cookies с данным плагином возникали и ранее. В таких случаях разработчики обычно выпускали обновление и проблема исчезала.

500 internal server error

Это ошибка сервера, в большинстве случаев связана с файлом .htaccess, точнее с неправильным синтаксисом в нем. Вариантами устранения является комментирование подозрительных строк знаком # (вначале) или выводом ошибок (строка): php_flag display_errors on, после чего вместо 500 internal server error будет выводиться конкретная ошибка (строка/документ), которую необходимо устранить.

… is not a function (jquery)

Это происходит из-за неправильного вызова функции. Помогает наведение порядка в js: последовательность загрузки скриптов, установка одиночных кавычек, замена $ на jQuery, удаление лишних запятых, добавление недостающих точки с запятой. В последней версии WordPress есть встроенная функция проверки кода и предупреждения об ошибках.

Также может помочь оборачивание проблемного скрипта в конструкцию:

(function($) {
..some script
})(jQuery);

Сообщение: Подтвердите действие на сайте

Нет интернет-соединения. Проверьте подключение и повторите попытку.

Методом тыка определил, что проблему вызывает плагин Contact Form 7. Это происходило из-за неправильно установленной reCaptcha.

Ошибка mediaelement

Uncaught TypeError: b(…).not(…).filter(…).mediaelementplayer is not a function

Устранил ошибку отключением mediaelement

add_action('init', 'avf_remove_media_element', 10);
function avf_remove_media_element()
{	
	wp_deregister_script('wp-mediaelement');
	wp_deregister_style('wp-mediaelement');
}

Не загружаются файлы

Не загружаются файлы, не обновляются плагины, при редактировании файл становиться пустым (и на него ничего не записывается) — это все признаки того, что на хостинге нет места на жестком диске.

Проблема с WP_CACHE

Не фатальная ошибка видна только с WP_DEBUG, выглядит примерно так:

Warning: include(/wp-content/advanced-cache.php): failed to open stream: No such file or directory in /wp-settings.php on line 84

Возникает если на сайте установлен сторонний плагин кэширования, который в процессе установки удалил advanced-cache.php, который система не может найти.
Нужно отключить функцию:

define('WP_CACHE', false);

либо восстановить ее в ядре.

Поделится информацией с друзьями

  • Комментарии
  • Вложения

Добавить комментарий

Пока нет комментариев. Будь первым!

Различные ошибки и их решения Различные ошибки и их решения
Изменение формы выбора вариаций
Рекомендации для васИзменение формы выбора вариацийOpttour.ru
Спасибо! Наш менеджер свяжется с Вами в течении 5 минут.