Полное и бесследное удаление плагинов WordPress

На первый взгляд, удалить проблемный плагин WordPress предельно просто – для этого нужно всего лишь нажать несколько кнопок. Однако после подобного стандартного удаления в коде WordPress остается множество совершенно ненужных данных.

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

Существует ли оптимальный способ полного удаления ненужных плагинов, когда можно быть уверенным, что после удаления плагина в исходном коде не осталось никаких следов? Из этой статьи вы узнаете, как решить проблему полного удаления плагинов WordPress.

Причины для удаления плагинов WordPress

Почему может возникнуть необходимость удаления плагина WordPress? На это может быть сразу несколько причин:

  1. Функциональность вас не устраивает. Иногда после установки и тестирования оказывается, что плагин вам не подходит. Возможно, у него нет каких-то важных для вас функций, или он не настолько хорошо справляется с задачей, как было обещано в описании. Такое случается, и в этом случае у вас появится необходимость удалить плагин бесследно.
  2. Вы больше не нуждаетесь в этом плагине. Возможно, появился лучший вариант, или вашему сайту больше не нужно выполнение задачи, за которую отвечало дополнение. Плагины не вечны – когда они вам больше не нужны, их надо удалять.
  3. Плагин не работает. WordPress-плагины разрабатываются сообществом программистов, среди которых есть и начинающие специалисты с невысокой квалификацией. Плагины не проходят проверку командой разработчиков WordPress. Как результат, возможно появление ошибок, конфликтов, серьезные неполадки в работе сайта. Бесследное удаление неработающих плагинов особенно важно, так как они всегда оставляют на сайте массу «мусорных» данных.
  4. Плагин заражен вирусом. Хотя заражение плагинов, размещенных в официальном репозитории WordPress, случается крайне редко, вредоносный код иногда встречается в темах оформления и дополнениях, загружаемых со сторонних сайтов. Очень часто вредоносный код находится в обнуленных, «нуленых» (Nulled) плагинах и темах оформления. В случае заражения сайта ни стандартная процедура деинсталляции, ни ручное удаление не смогут справиться с вирусом. Если вы не обладаете достаточными знаниями для решения возникшей проблемы, понадобится помощь специалиста.

Почему разработчики не предусматривают полное удаление плагинов

Из десятка установленных вами WordPress-плагинов несколько дополнений наверняка оставили ненужные файлы после собственного удаления. Неужели разработчики нарочно допускают оставление следов после удаления плагинов?

Существует несколько причин, по которым удаленные дополнения оставляют следы. Иногда в этом виноват движок WordPress – стандартный деинсталлятор не всегда удаляет файлы полностью. В других случаях виноваты разработчики – они могут давать файлам некорректные названия и размещать их в неподходящих директориях. Как следствие, деинсталлятор не может найти все файлы во время удаления плагина.

Иногда разработчики действительно оставляют следы намеренно – подобно файлам cookie в кэше браузера, в этих остаточных данных сохраняются настройки пользователя, на случай, если владелец сайта решит повторно установить плагин. Если вы не планируете переустановку, «мертвые» файлы будут просто занимать место на хостинге.

Зараженный вирусом плагин может намеренно размещать свои файлы в папках, которые недоступны деинсталлятору, или даже добавлять вредоносный код в системные файлы, чтобы сайт оставался инфицированным. Удаление такого вредоносного кода потребует не только уничтожения нескольких записей в базе данных – вам понадобится антивирусное программное обеспечение.

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

Разница между деактивацией и удалением

Когда вам нужно отключить плагин, у вас есть две опции: деактивация и полное удаление. Какой из этих вариантов лучше и в чем заключается разница?

Цель деинсталляции – полное удаление всех записей и файлов плагина, как будто его никогда и не устанавливали на сайт. Хотя WordPress не всегда справляется в полной мере с этой задачей, во время процедуры деинсталляции движок пытается удалить все файлы дополнения, а затем убирает его название из списка плагинов.

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

Итак, какой же вариант лучше? Если вам нужно избавиться от ненужных записей в базе данных и объемных остаточных файлов – лучше удалить плагины полностью и без всяких следов.

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

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

3 способа удаления WordPress-плагинов

Существует три метода удаления проблемных плагинов – с помощью стандартного деинсталлятора WordPress; с использованием встроенного в сам плагин механизма деинсталляции; ручное удаление через FTP-клиент.

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

Каким бы методом вы ни воспользовались, всегда стоит выделить время на чтение официальной документации плагина, опубликованной на сайте разработчиков. Возможно, существует специальная инструкция для полного и бесследного удаления файлов плагина – в этом случае вам не придется вручную проверять все директории на хостинге.

Простое удаление плагинов

Простейший способ удаления не влечет за собой сложной ручной работы и не представляет риска для важных файлов WordPress. Решение находится прямо в панели администрирования, и хотя оно не всегда срабатывает идеально, большинство файлов будет удалено автоматически.

Войдите в панель администрирования WordPress, перейдите на вкладку Плагины > Установленные плагины. Там вы найдете список всех дополнений, установленных на вашем сайте.

Просмотрите список, пока не найдете плагин, который нужно удалить. Нажмите кнопку «Деактивировать». После этого плагин будет отключен и больше не сможет повлиять на работу вашего сайта. Но, как мы уже говорили выше, если вы уверены, что плагин вам больше не нужен, его необходимо полностью удалить.

После деактивации рядом с плагином появится кнопка «Удалить». Нажмите на нее, и большая часть файлов будет удалена с вашего сайта автоматически.

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

Удаление плагинов через FTP

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

Примечание: хотя в большинстве случаев этот способ удаления не влечет за собой никаких проблем, сложные плагины удалять таким образом не следует. Неполадок в работе сайта такой метод удаления обычно не вызывает, но ручное удаление директорий может оставить после себя еще больше «мусорных» файлов. Помните, что в первую очередь, нужно запустить стандартную процедуру автоматической деинсталляции плагина.

Однако этот метод подходит в том случае, когда у вас нет доступа к панели администрирования, или плагин не удаляется стандартным деинсталлятором.

Прежде всего, скачайте программу для работы по протоколу FTP, клиент наподобие FileZilla. Возможно, на вашем хостинге есть собственный FTP-интерфейс. Для работы с FTP-клиентом понадобятся данные учетной записи хостинга – имя пользователя, пароль, номер порта.

После подключения перейдите в папку public_html, затем в wp-content. Откройте поддиректорию plugins.

Найдите плагин, подлежащий удалению, кликните по нему правой кнопкой мыши и выберите пункт «Удалить» из контекстного меню. После этого плагин не сможет влиять на работу сайта. Но, хотя большая часть функциональности плагина таким образом будет удалена, у него остались дополнительные папки и записи в базе данных, которые надо удалить вручную. Плагин также мог внести изменения в файлы wp-config.php и .htaccess – именно поэтому и рекомендуется, в первую очередь, запускать автоматический деинсталлятор.

Собственный деинсталлятор плагина

Не у каждого плагина есть собственный деинсталлятор, но сложные и объемные дополнения обычно имеют такую опцию.

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

Поэтому перед удалением плагина всегда есть смысл обратиться к его официальной документации – вы можете сэкономить себе немало времени на ручном удалении. Хотя расположение кастомных деинсталляторов у всех плагинов разное, обычно они доступны прямо в настройках дополнения.

Удаление остаточных файлов

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

Как и в способе с удалением через FTP, подключитесь к серверу с помощью FTP-клиента, например, такого ка FileZilla, используя данные учетной записи, полученные от хостинг-провайдера. Перейдите в поддиректорию /public_html/wp-content/plugins/, найдите папку плагина, и удалите ее.

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

Также не забудьте заглянуть в файлы .htaccess и wp-config.php и удалите записи, которые относятся к не нужному плагину. Однако будьте внимательны – удаляйте только то, что наверняка относится к не нужному дополнению.

Удаление записей в базе данных

WordPress-плагинам для корректной работы нужен доступ к базе данных. Как правило, после удаления плагинов некоторые созданные ими записи остаются в БД. Удалить такие записи можно вручную или с помощью специального плагина. Поскольку редактирование записей в базе данных – сложная и рискованная задача, перед такой работой необходимо обязательно создавать резервную копию.

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

К примеру, записи от плагина Contact Form 7 в базе данных называются wp_contact_form_7. Другие плагины могут использовать похожие шаблоны с фрагментами собственных названий.

После того, как вы выяснили название, под которым плагин делал записи в базе данных, отфильтруйте и удалите все ненужные данные. Будьте внимательны, проверяйте названия записей несколько раз перед непосредственным удалением.

Если вам не хочется делать такую работу вручную, есть смысл воспользоваться специальным оптимизатором базы данных. К примеру, WP-Optimize или Advanced Database Cleaner одинаково хорошо справляются с подобными задачами.

Удаление ненужных шорткодов

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

Удалить эти шорткоды можно вручную, и скорее всего, вы так и поступите. Но, пока вы ищите время для этой работы, шорткоды можно легко скрыть с помощью простой функции. Для этого откройте файл functions.php – с помощью FTP-клиента или прямо в панели администрирования WordPress (Внешний вид > Редактор). Добавьте приведенную ниже функцию для обработки остаточных шорткодов, и проблема будет решена:

add_shortcode( 'exampleshortcode', '__return_false' );

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

Полное удаление плагинов WordPress

Иногда плагины не удаляются без следа стандартными методами. «Мусорные» данные увеличиваются в объеме. Но после ручного удаления файлов с помощью FTP-клиента, очистки базы данных и скрытия поврежденных шорткодов вы сможете наконец-то избавиться от всех следов упрямого плагина.

Сколько ненужных данных вам удалось удалить после прочтения этой статьи? Поделитесь своими успехами и рекомендациями в комментариях.

Данная публикация является переводом статьи «How to Uninstall WordPress Plugins Completely & Without a Trace» , подготовленная редакцией проекта.

Меню