Краткий ответ
Виновника конфликта плагинов быстрее всего найти так: отключите все плагины, затем включайте их по одному и после каждого проверяйте, возвращается ли проблема. Если сбой возникает только на одной странице или в одной форме, повторите ту же процедуру с активной темой. Прежде всего сделайте резервную копию сайта и работайте на копии или в нерабочее время.
Как проявляется проблема
- Сайт или часть сайта перестает работать после обновления плагина или WordPress
- Элементы страницы не отображаются, верстка ломается или появляется белый экран
- Ошибка возникает только когда вы вошли как администратор, а посетители ее не видят
- Контактная форма, магазин или галерея перестают работать без видимой причины
- В журнале ошибок повторяется одно и то же сообщение, связанное с папкой одного плагина
Частые причины
Два плагина делают одно и то же
Два плагина для кеширования, оптимизации изображений или резервного копирования часто блокируют друг друга, потому что перехватывают одни и те же запросы. Конфликт тогда возникает только когда активны оба.
Несовместимая версия с WordPress или PHP
Плагин, не обновленный для текущей версии WordPress или PHP, может вызывать ошибки, которые видны только на определенных страницах. Проверка совместимости на странице плагина в репозитории выявляет такие случаи.
Конфликт с активной темой
Некоторые плагины полагаются на функции, которые тема изменяет или удаляет, поэтому сбой появляется только с этой темой. Поэтому тему проверяют отдельно от плагинов.
Поврежденный файл или неполное обновление
Прерванное обновление или неполностью загруженный файл плагина могут оставить отсутствующие файлы. Плагин тогда активен, но не может загрузиться правильно.
Остатки отключенного плагина
Таблица в базе данных или опция, оставленная старым плагином, может влиять на новый плагин того же назначения. Проблема тогда не исчезает даже после отключения.
Пошаговое решение
- 1
Сделайте резервную копию и запишите состояние
Перед любыми изменениями сделайте полную копию сайта, файлов и базы данных, лучше всего инструментом для резервного копирования или через панель хостинга. Запишите, какие плагины у вас есть и какие у них версии, чтобы можно было вернуть точное состояние. Если сайт в продакшене, работайте в нерабочее время или на копии сайта на тестовом домене.
- 2
Включите ведение журнала ошибок в WordPress
Временно в файле
wp-config.phpустановитеdefine('WP_DEBUG', true);,define('WP_DEBUG_LOG', true);иdefine('WP_DEBUG_DISPLAY', false);, затем посмотрите файлwp-content/debug.log. Сообщения в журнале часто называют папку плагина, который создает проблему, что сразу сужает круг подозреваемых. Когда закончите, вернитеWP_DEBUGиWP_DEBUG_LOGнаfalse, аWP_DEBUG_DISPLAYна предыдущее значение. - 3
Отключите все плагины сразу
Перейдите в
Плагины > Установленные плагины, отметьте все плагины и выберитеДеактивироватьиз выпадающего списка, затем примените. Если после этого проблема не возникает, подтверждено, что ее вызывает какой-то плагин. Если она возникает и дальше, причина скорее всего в теме или базе данных, поэтому перейдите к шагу с темой. - 4
Включайте плагины по одному
Активируйте первый плагин, затем проверьте страницу, на которой возникал сбой. Затем активируйте следующий и снова проверьте. Повторяйте процедуру, пока проблема не вернется; плагин, который вы активировали последним, и есть виновник или один из двух плагинов, которые конфликтуют.
- 5
Проверьте комбинацию двух плагинов
Если проблема возвращается только когда активны два плагина, отключите один из них и оставьте другой. Затем поменяйте роли: отключите второй, а включите первый. Так вы подтверждаете, что конфликт между ними, а не то, что один плагин сам по себе вызывает ошибку.
- 6
Проверьте тему таким же образом
Если сбой возникает и со всеми отключенными плагинами, перейдите на стандартную тему. Перейдите в
Внешний вид > Темы, активируйте тему, которая идет с WordPress, и проверьте сайт. Если проблема исчезнет, виновата предыдущая тема или ее настройка, а не плагин. - 7
Верните плагин на более старую версию
Когда вы знаете виновника, проверьте, доступна ли более старая версия плагина. На странице плагина в репозитории найдите раздел с предыдущими версиями и скачайте
.zip, затем загрузите его черезПлагины > Добавить новый > Загрузить плагин. Возвращайтесь на старую версию только если она безопасна; если и это не поможет, поищите альтернативный плагин того же назначения. - 8
Верните все остальные плагины и очистите кеш
Снова активируйте все плагины, кроме виновника, затем очистите кеш сайта и браузера. Если вы используете плагин для кеширования, очистите кеш из его меню, а кеш браузера очистите через настройки браузера. Проверьте сайт в приватном окне браузера, а при необходимости отключите расширения, чтобы исключить их влияние.
Если ничего не помогает: безопасное отключение через файловую систему
Когда вы не можете войти в админку из-за ошибки, плагины можно отключить через панель хостинга или FTP-клиент. Откройте папку wp-content/plugins и переименуйте папку проблемного плагина, например из имя-плагина в имя-плагина-off. WordPress тогда не видит плагин и автоматически его отключает. То же можно сделать с папкой темы в wp-content/themes, но только если вы перед этим активировали другую тему; иначе сайт может остаться без оформления. После каждого изменения обновляйте страницу сайта и проверяйте, возвращается ли ошибка. Когда закончите, верните исходные имена папок. Если ошибка возникает и с отключенными плагинами и стандартной темой, причина вероятно в базе данных или в файлах ядра, поэтому следующий шаг это восстановление сайта из резервной копии.
Как избежать повторения
- Обновляйте плагины регулярно, но сначала на копии сайта и с резервной копией
- Держите минимально возможное количество плагинов и удаляйте те, которые не используете
- Перед каждым крупным обновлением записывайте версии плагинов и темы
- Используйте плагины с активной поддержкой и проверенной совместимостью
Когда лучше обратиться к специалисту
Если ошибка повторяется и после отключения всех плагинов и смены темы, или если сайт вообще не открывается, лучше вызвать IT-поддержку, чем дальше менять файлы и базу данных без резервной копии.
Создание сайтов · Быстрые, SEO-оптимизированные многоязычные сайтыЧастые вопросы
Как узнать, какой плагин вызывает ошибку, если я не могу войти?
Через панель хостинга или FTP откройте папку `wp-content/plugins` и переименуйте папки плагинов, затем проверяйте сайт после каждого изменения. При необходимости временно переименуйте и всю папку `wp-content/plugins` в `wp-content/plugins-off`, а после проверки верните ее. Не меняйте `wp-config.php`, если не уверены, что именно меняете.
Безопасно ли отключать все плагины на сайте в продакшене?
Кратковременное отключение это обычная процедура, но посетители в этот период могут видеть сайт без отдельных функций, например без магазина или формы. Поэтому работайте в нерабочее время, на копии сайта или в режиме обслуживания.
Что если проблема возникает только когда я вошел?
Это указывает на кеш или на плагин, который меняет отображение для авторизованных пользователей. Очистите кеш сайта и браузера, затем проверьте сайт в приватном окне. Если проблема там не возникает, отключайте плагины по той же процедуре.