Как удалить зависшие опции в базе WordPress без плагинов

Что такое зависшие опции в WordPress и почему они возникают

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

Диагностика проблемы: как найти зависшие опции

Для начала нужно определить, какие опции считаются зависшими. Обычно это опции, связанные с удалёнными плагинами или темами. Определить их вручную сложно, но можно найти опции, которые не менялись длительное время и имеют специфические префиксы плагинов.

Самый простой способ — просмотреть таблицу опций с помощью SQL-запроса:

SELECT option_name, option_value FROM wp_options WHERE autoload = 'yes' ORDER BY option_name;

Здесь autoload = 'yes' означает, что опция загружается каждый раз при загрузке сайта, что влияет на производительность.

Для поиска «подозрительных» опций можно фильтровать по префиксу:

SELECT option_name FROM wp_options WHERE option_name LIKE '%pluginprefix_%';

Если плагин удалён, соответствующие опции, скорее всего, не нужны.

Пошаговое удаление зависших опций вручную

1. Создайте резервную копию базы данных

Перед любыми изменениями крайне важно сохранить резервную копию базы. Это можно сделать через phpMyAdmin или командой:

mysqldump -u username -p database_name > backup.sql

2. Определите список опций для удаления

Используйте SQL-запросы выше, чтобы составить список. Можно выгрузить в CSV или текстовый файл для удобства.

3. Удалите опции через SQL-запросы

Для удаления конкретных опций используйте запросы вида:

DELETE FROM wp_options WHERE option_name = 'pluginprefix_optionname';

Для массового удаления по префиксу:

DELETE FROM wp_options WHERE option_name LIKE 'pluginprefix_%';

Также можно удалить все неавтозагружаемые опции:

DELETE FROM wp_options WHERE autoload = 'no' AND option_name LIKE 'pluginprefix_%';

4. Очистите кеш сайта и браузера

Если используется кеширование, его нужно очистить, чтобы изменения вступили в силу.

Проверка результата после удаления

Проверьте, что сайт работает корректно, и что удалённые опции действительно отсутствуют:

  • Запустите SQL-запрос на поиск удалённых опций — они не должны возвращать результатов.
  • Проверьте загрузку страниц на ошибки и скорость.
  • Проверьте работу функционала, связанного с удалёнными плагинами (если плагин был удалён, ошибок не должно быть).

Частые ошибки и как их исправить

Ошибка 1: Удаление нужных опций

Причина — неверное определение зависших опций. Решение: тщательно проверяйте префиксы и назначение опций, делайте резервные копии.

Ошибка 2: Нарушение работы плагинов после удаления опций

Если плагин не был удалён, но его опции удалены вручную, плагин может работать некорректно. Решение: удалять опции только для удалённых плагинов.

Ошибка 3: Отсутствие резервного копирования

Решение: всегда делайте бэкап перед изменениями.

Практические советы по безопасности и производительности

  • Регулярно очищайте базу от неиспользуемых опций — это снижает нагрузку на базу и ускоряет загрузку.
  • Используйте autoload = 'no' для опций, которые не нужны на каждой странице.
  • Для чистки базы без плагинов используйте SQL-запросы через phpMyAdmin или WP-CLI.
  • WP-CLI позволяет удалять опции так:
wp option delete pluginprefix_optionname

Сравнение методов удаления зависших опций

МетодПреимуществаНедостаткиКомпромисс
Удаление через плагины (например, Clearfy)Удобно, безопасно для новичков, автоматизацияДополнительная нагрузка, иногда платные функцииИспользовать для регулярной чистки без риска
Ручное удаление через SQLБыстро, без дополнительных плагинов, полный контрольРиск ошибки, требует знаний SQLТолько для опытных разработчиков с резервным копированием
Удаление через WP-CLIАвтоматизация, безопасно, быстроТребует доступа к серверу и знания командной строкиОптимально для системных администраторов
Как изменить URL AJAX-запросов в WordPress без конфликтов
03.04.2026
Как удалить неиспользуемые термины таксономий в WordPress без плагинов
26.02.2026
WooCommerce: как автоматически очищать зависшие варианты товаров без плагинов
01.06.2026
Как избежать проблем с несоответствием версий WordPress и PHP
19.02.2026
Как успешно обновлять WooCommerce без потери данных
26.04.2026