Как удалить плагин WordPress: удаление в админ-панели и очистка оставшихся данных в БД

Удалить плагин WordPress в админ-панели можно одной кнопкой, но таблицы и настройки, созданные плагином, часто остаются в базе данных. На этом сайте тоже по состоянию на 2026-10-09 остаются 8 таблиц и 38 строк опций от двух ранее удалённых плагинов — рекламного и плагина комментариев.
По порядку разобрано всё — от удаления плагина в админ-панели до очистки оставшихся шорткодов, папок и данных в БД.
1️⃣ Удаление плагина в админ-панели
В разделе [Плагины] > [Установленные] сначала нажмите [Деактивировать], а затем — появившуюся в той же строке ссылку [Удалить].

Если в плагине есть код очистки, он выполнится в этот момент; если его нет, удалятся только файлы, а данные останутся.
2️⃣ Почему после удаления остаются данные
При удалении плагина WordPress выполняет его файл [uninstall.php] или функцию, зарегистрированную через [register_uninstall_hook]. Удаление данных возложено на этот код, поэтому плагины без такого кода или с кодом, который удаляет лишь часть данных, оставляют после себя таблицы и опции.
Бывает, что разработчики оставляют данные намеренно — чтобы при повторной установке настройки вернулись в прежнем виде. Некоторые плагины, например Wordfence, дают в настройках возможность удалить вместе с плагином и данные; такую же возможность предлагает многоязычный плагин Polylang.

3️⃣ Как оставшиеся данные влияют на сайт
Строки оставшихся опций, у которых включён [autoload], загружаются в память вместе с другими настройками при каждом открытии страницы. На этом сайте такими строками были оставшиеся [wc_options] (15 КБ) от wpDiscuz и [advanced-ads-ab-module] (14 КБ) от Advanced Ads.
Впрочем, сумма autoload на этом сайте — около 392 КБ, из них на оставшиеся строки приходится около 39 КБ, так что заметной разницы в скорости это не даёт. Экран [Здоровье сайта] в WordPress показывает предупреждение, когда сумма autoload превышает 800 КБ.
После того как у 23 оставшихся строк отключили autoload, значение [Размер автозагрузки] в Advanced Database Cleaner уменьшилось с 391,52 КБ до 353,36 КБ.


В обычных условиях это не проблема. Посетители, которые получают страницы из кеша, не проходят через PHP, поэтому пакет autoload загружают только запросы в обход кеша: админ-панель, первый визит сразу после очистки кеша, боты. Если такие запросы приходят разом, каждый из них распаковывает пакет autoload в память, поэтому чем больше autoload у сайта, тем быстрее растёт нагрузка на сервер.
Опции с выключенным autoload и оставшиеся таблицы без самого плагина никто не читает, поэтому на скорость они не влияют — только увеличивают объём базы данных и размер резервных копий.
4️⃣ Удаление оставшихся следов
Прежде чем что-то менять в базе данных, сначала сделайте полную резервную копию.
🔲 Шорткоды
Шорткоды, которые плагин вставлял в записи, после его удаления появляются в тексте как есть — в квадратных скобках. Пока вы не отредактируете каждую запись, добавьте в [functions.php] темы строку ниже, чтобы этот шорткод ничего не выводил.
add_shortcode( 'pluginshortcode', '__return_false' );На этом сайте тоже использовалось около десяти шорткодов табличного плагина; когда плагин удалили из-за проблемы с безопасностью, шорткоды и таблицы убрали по одному, и с тех пор шорткоды здесь не используются.
🔲 Папка плагина
Если папка не удалилась через админ-панель, удалите её напрямую в [wp-content/plugins] через FTP, cPanel или SSH.
🔲 Таблицы и строки БД (phpMyAdmin)
Большинство хостингов предоставляют phpMyAdmin.

Оставшиеся таблицы найдите на вкладке [Структура] по названию плагина и удалите. Ниже — экран на примере Yoast SEO.

Строки вроде опций ищите на вкладке [Поиск] с подстановочным знаком [%], например [%yoast%].


Если дополнительно отфильтровать их через [Фильтровать строки], можно убедиться, что строки относятся только к Yoast SEO.

Строки в основном остаются в [wp_options], [wp_postmeta] и [wp_usermeta], а префикс [wp_] перед именами таблиц на разных сайтах может отличаться. Если удалять только по названию, можно стереть и строки, которые использует другой плагин, поэтому удаляйте только те строки, для которых вы проверили, какому плагину они принадлежат.
5️⃣ Плагины для очистки БД
Чтобы навести порядок не в phpMyAdmin, а из админ-панели, используйте Advanced Database Cleaner. Этот плагин работает и на этом сайте: для каждой опции и таблицы он показывает в колонке [Принадлежит], какому плагину она принадлежит, так что можно отобрать строки, которые безопасно удалить.
Строки, у которых в [Принадлежит] указано [Еще не сканировалось!], — это не неиспользуемые строки, а строки, владелец которых пока неизвестен. На этом сайте многие незнакомые названия тоже оказались лицензиями и настройками плагинов, которые сейчас активны, — например Kadence Blocks Pro и WP Ghost; если удалить такие строки, лицензия отвяжется или настройки сбросятся.
Поэтому даже строки удалённого плагина не удаляйте сразу, а сначала отключите у них autoload. Значения при этом остаются на месте, так что всё можно вернуть в любой момент, а если несколько дней на сайте не будет проблем, тогда и удаляйте.


WP-Optimize тоже умеет удалять оставшиеся таблицы в бесплатной версии.


🔢 FAQ & рекомендуемые материалы
Настройки
2 способа убрать запрос учётных данных FTP
Два способа избавиться от окна ввода данных FTP, которое появляется при каждой установке или обновлении плагина.
Оптимизация
Обзор & руководство по Perfmatters
Настройки оптимизации, собранные за пять лет использования.
Производительность
Отключение WP-Cron и системный cron
Как отключить wp-cron.php, который запускается при каждом открытии страницы, и перенести задачи в серверный cron.
ℹ️ О партнёрских ссылках
Материалы этого сайта содержат партнёрские ссылки. Если посетитель покупает товар или услугу по такой ссылке, сайт получает комиссию от продавца. При этом сумма, которую платит покупатель (при акционных скидках сумма снижается ↓), не увеличивается. Указанные цены, скидки и наличие актуальны на момент написания и могут отличаться, поэтому перед покупкой уточняйте их у продавца. Товары выбираются и оцениваются по нашим собственным критериям, а комиссия не влияет ни на порядок, ни на содержание обзоров.