Краткий ответ: конфликт плагинов WordPress возникает, когда два плагина, тема, кеш, версия PHP или кастомный код мешают друг другу. Чтобы найти причину, сделайте backup, включите debug.log, отключите плагины безопасным способом, проверьте сайт на стандартной теме, затем включайте плагины по одному и фиксируйте, после какого действия ошибка возвращается.
Конфликт плагинов WordPress — это ситуация, когда один плагин ломает работу другого плагина, темы, админки, WooCommerce, формы, редактора, кеша, REST API или фронтенда сайта.
Проблема не всегда выглядит как явная ошибка. Иногда сайт открывается, но не работает кнопка, форма не отправляется, корзина WooCommerce зависает, админка становится медленной, стили ломаются, появляется ошибка 500, белый экран или критическая ошибка WordPress.
Если после обновления сайт сразу сломался, полезно дополнительно проверить инструкцию Сайт WordPress сломался после обновления: что делать. Там важен порядок действий: не обновлять всё подряд, а найти точную причину.
Главная задача — не просто отключить проблемный плагин, а понять, какая связка вызывает сбой. Иногда плагин сам по себе работает нормально, но ломается только вместе с конкретной темой, кешем, PHP-версией или другим плагином.
| Симптом | Возможная причина | Где проверять |
|---|---|---|
| Белый экран сайта | PHP Fatal error в плагине или теме | debug.log, error_log, последние обновления |
| Критическая ошибка WordPress | сломанный плагин, несовместимость PHP, ошибка класса или функции | debug.log, режим восстановления, FTP |
| Не работает админка | плагин безопасности, кеш, admin hook, JS-ошибка | Console, Network, /wp-admin/, debug.log |
| Не отправляется форма | конфликт Contact Form 7, SMTP, reCAPTCHA, кеша или JS | Console, Network, SMTP-лог, форма |
| Ломается WooCommerce | кеш корзины, конфликт оплаты, доставки, шаблонов или AJAX | WooCommerce logs, checkout, cart fragments |
| Сайт стал медленным | тяжёлый плагин, конфликт кеша, cron, запросы к базе | Query Monitor, логи, cron, база |
| Ошибка только на одной странице | шорткод, блок, виджет, page builder или шаблон | контент страницы, шаблон, JS, PHP-лог |
Безопасная диагностика конфликта строится по принципу: сначала сохранить сайт, потом изолировать проблему, затем включать элементы по одному.
Перед отключением плагинов сохраните файлы и базу данных. Это особенно важно для WooCommerce, LMS, CRM, сайтов с заявками, оплатами, личными кабинетами и подписками.
Минимально сохраните:
Если конфликт вызывает PHP-ошибку, debug.log часто сразу показывает файл и строку. Это быстрее, чем угадывать по названию плагина.
Например, ошибка может выглядеть так:
PHP Fatal error: Uncaught Error: Call to undefined function plugin_function()
in /wp-content/plugins/example-plugin/example-plugin.php on line 125
В таком случае нужно проверять конкретный плагин, его версию, совместимость с PHP и зависимость от других плагинов.
Перед проверкой конфликтов временно отключите кеш, минификацию, объединение JavaScript, defer, delay JS и CDN-кеш. Иначе можно искать проблему в плагинах, хотя сайт продолжает отдавать старый кешированный код.
Особенно часто кеш ломает:
Для живого сайта безопаснее использовать режим диагностики, при котором плагины отключаются только для администратора, а посетители продолжают видеть обычный сайт.
Логика проверки:
Если сайт показывает критическую ошибку или белый экран, зайдите через FTP или файловый менеджер хостинга.
Путь:
/wp-content/plugins/
Переименуйте папку проблемного плагина или всю папку plugins.
Например:
plugins
plugins-off
После этого WordPress временно отключит обычные плагины. Если сайт заработал, верните папке имя plugins и отключайте плагины по одному.
Иногда кажется, что конфликтуют плагины, но реальная причина в теме. Тема может переопределять шаблоны WooCommerce, подключать старый jQuery, менять хуки, стили и поведение редактора.
Проверьте сайт на стандартной теме WordPress. Если проблема исчезла, конфликт находится между темой и одним из плагинов.
Не включайте все плагины сразу. Так вы потеряете точку, где ошибка вернулась.
Правильный порядок:
Частая ошибка — считать виновником последний включённый плагин. Иногда проблема появляется только в связке: например, форма работает, SMTP работает, но вместе с reCAPTCHA и кешем форма перестаёт отправляться.
Фиксируйте такие связки:
Важно: код и команды ниже могут повлиять на доступ к сайту, работу админки, WooCommerce, форм, кеша и пользовательских сессий. Перед изменениями сделайте backup. На рабочем сайте не выводите ошибки на экран.
Куда вставлять: wp-config.php, перед строкой /* That’s all, stop editing! Happy publishing. */.
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
@ini_set('display_errors', 0);
После повторения ошибки проверьте файл:
/wp-content/debug.log
Куда запускать: SSH в корневой папке сайта.
wp plugin deactivate --all
Замените plugin-folder на папку нужного плагина.
wp plugin activate plugin-folder
wp plugin list --status=active
wp --info
Куда запускать: SSH. Укажите файл, который фигурирует в debug.log.
php -l wp-content/plugins/plugin-folder/plugin-file.php
Важно: этот способ используйте только если нет доступа к админке и FTP-отключение не подходит. Перед правкой базы сделайте экспорт.
В phpMyAdmin найдите таблицу wp_options и параметр active_plugins. Можно временно очистить значение, чтобы отключить обычные плагины.
option_name: active_plugins
option_value: a:0:{}
Если у сайта другой префикс таблиц, вместо wp_options будет свой вариант, например abc_options.
Куда вставлять: functions.php дочерней темы или отдельный мини-плагин.
add_action('wp_mail_failed', function ($wp_error) {
if (!is_wp_error($wp_error)) {
return;
}
error_log('WP Mail Failed: ' . $wp_error->get_error_message());
$error_data = $wp_error->get_error_data();
if (!empty($error_data)) {
error_log('WP Mail Failed Data: ' . print_r($error_data, true));
}
});
После правильной диагностики вы должны получить не просто “сайт заработал”, а точное понимание, какой плагин или какая связка вызывает проблему.
Хороший результат выглядит так:
Если конфликт уже привёл к критической ошибке, дополнительно используйте инструкцию Критическая ошибка WordPress: что делать и как восстановить сайт.
Лучший вариант для коммерческого сайта — проверять конфликт на staging-копии. Это копия сайта, где можно отключать плагины, менять тему, обновлять PHP и тестировать ошибки без риска для посетителей.
На staging удобно проверять:
Если конфликт появился после обновления конкретного плагина, временный откат может быстро вернуть сайт в рабочее состояние. Но откат — это не финальное решение. Нужно проверить совместимость, журнал изменений и причину конфликта.
Если плагин давно не обновлялся, конфликтует с PHP, ломает админку или создаёт тяжёлые запросы, иногда быстрее заменить его на другой инструмент, чем постоянно чинить последствия.
Если визуально сайт открывается, но не работают кнопки, модальные окна, формы, вкладки, фильтры или корзина, откройте DevTools.
WooCommerce особенно чувствителен к конфликтам. Нельзя кешировать корзину, checkout, личный кабинет и некоторые AJAX-запросы как обычные страницы.
Если проблема связана с магазином, проверьте также как ускорить WooCommerce без поломки корзины и оформления заказа.
Если конфликт связан с отправкой писем или формами, проверьте SMTP, From Email, Reply-To, reCAPTCHA, кеш и REST API. Для Contact Form 7 есть отдельная инструкция: Contact Form 7 не отправляет письма: причины и как исправить.
Так можно сломать оплату, формы, личный кабинет, мультиязычность, SEO-разметку или доступ пользователей. Сначала backup, потом диагностика.
Если после массового включения ошибка вернулась, вы не поймёте, какой плагин виноват. Включайте по одному.
Кеш может показывать старое состояние сайта. После каждого важного изменения очищайте кеш плагина, CDN и браузера.
Не все проблемы создают плагины. Тема может конфликтовать с WooCommerce, page builder, Gutenberg, полями ACF, JS-библиотеками и шаблонами.
Старые плагины могут ломаться на новых версиях PHP, а новые плагины могут требовать более свежую версию PHP. Проверяйте совместимость.
Каждый лишний плагин — это дополнительный код, запросы, хуки, обновления и потенциальный конфликт. Удаляйте то, что не используется.
Если вы отключили плагин и сайт заработал, это только первый шаг. Нужно понять, чем заменить функционал, как обновляться дальше и не ломает ли отключение важные процессы.
Это ситуация, когда один плагин мешает работе другого плагина, темы, WordPress, WooCommerce, формы, кеша, REST API или админки.
Сделайте backup, включите debug.log, отключите плагины, включите стандартную тему, затем активируйте плагины по одному и проверяйте, после какого плагина ошибка возвращается.
Через FTP переименуйте папку /wp-content/plugins/ в plugins-off или отключите плагины через WP-CLI командой wp plugin deactivate –all.
После обновления может измениться PHP-код, JavaScript, хуки, зависимости, требования к версии WordPress или PHP. Поэтому старые настройки и связки плагинов могут перестать работать.
Можно, но аккуратно. Лучше использовать staging-копию или troubleshooting mode, чтобы посетители не видели отключение плагинов. На коммерческом сайте обязательно сделайте backup.
Если после отключения всех плагинов проблема исчезла, а после включения конкретного плагина вернулась, причина связана с этим плагином или его связкой с темой/другим плагином.
Проверьте настройки, обновления, документацию, совместимость PHP и исключения кеша. Если конфликт не решается, один из плагинов лучше заменить или доработать кодом.
Да. Плагин может вызвать PHP Fatal error, JS-ошибку, блокировку REST API, admin-ajax.php или wp-login.php. В таком случае используйте FTP, WP-CLI и debug.log.
Плагин мог отвечать за дизайн, шорткоды, формы, блоки, WooCommerce-функции или page builder. Отключение помогает диагностировать конфликт, но потом нужно вернуть или заменить функционал.
Не сразу. Сначала лучше отключить его, проверить сайт, сохранить логи и понять, можно ли исправить настройками, обновлением, откатом или заменой. Удаляйте только после backup.
Да. Некоторые плагины не совместимы с новой или старой версией PHP. Поэтому при диагностике нужно проверять не только плагины, но и версию PHP на хостинге.
Используйте staging, обновляйте плагины по одному, удаляйте лишнее, не ставьте несколько плагинов с одинаковыми функциями, проверяйте совместимость с PHP и делайте регулярные backup.
Если после обновления или установки плагина сайт сломался, не работает админка, формы, WooCommerce или появилась критическая ошибка, лучше сначала провести диагностику конфликта, а не отключать всё наугад.
Конфликт плагинов WordPress нужно искать не наугад, а по шагам: backup, debug.log, отключение кеша, проверка темы, отключение плагинов, включение по одному, анализ ошибок и фиксация связки, после которой проблема возвращается. Так можно не просто временно “оживить” сайт, а найти настоящую причину и безопасно исправить её.
Об авторе