Как удалить и отключить неиспользуемые виджеты в WordPress: практическое руководство

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

Почему важно отключать неиспользуемые виджеты

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

  • Сократить время загрузки страниц;
  • Упростить интерфейс панели управления;
  • Уменьшить потенциальные уязвимости за счёт снижения количества подключаемого кода;
  • Оптимизировать использование серверных ресурсов.

Рассмотрим несколько способов, как это сделать.

Отключение виджетов через функции темы

Самый простой способ убрать ненужные виджеты — запретить их регистрацию в WordPress с помощью функции unregister_widget. Для этого добавьте следующий код в файл functions.php вашей темы или в кастомный плагин:

function wplock_unregister_unused_widgets() {
    unregister_widget('WP_Widget_Archives');
    unregister_widget('WP_Widget_Calendar');
    unregister_widget('WP_Widget_Meta');
    unregister_widget('WP_Widget_Pages');
    unregister_widget('WP_Widget_Recent_Comments');
    unregister_widget('WP_Widget_Recent_Posts');
    unregister_widget('WP_Widget_RSS');
    unregister_widget('WP_Widget_Tag_Cloud');
    unregister_widget('WP_Widget_Text');
}
add_action('widgets_init', 'wplock_unregister_unused_widgets', 11);

В этом примере мы отключаем стандартные виджеты WordPress, которые часто не нужны. Вы можете добавить или убрать из списка те, которые хотите оставить или удалить.

Как определить, какие виджеты отключать

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

function wplock_list_registered_widgets() {
    global $wp_widget_factory;
    echo '<pre>';
    print_r(array_keys($wp_widget_factory->widgets));
    echo '</pre>';
}
add_action('admin_notices', 'wplock_list_registered_widgets');

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

Удаление виджетов плагинов

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

Например, если установлен плагин WPRemark, и вы не используете его виджет отзывов, отключите его так:

function wplock_unregister_wpremark_widget() {
    unregister_widget('WPRemark_Widget');
}
add_action('widgets_init', 'wplock_unregister_wpremark_widget', 11);

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

Отключение виджетов через плагин Clearfy Pro

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

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

Удаление виджетов из базы данных

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

Чтобы очистить базу, можно использовать следующий код, который удалит все настройки для конкретного виджета:

function wplock_delete_widget_options($widget_id_base) {
    global $wpdb;
    $option_name = 'widget_' . $widget_id_base;
    delete_option($option_name);
}

// Пример удаления настроек виджета Recent Posts
wplock_delete_widget_options('recent-posts');

Этот код удалит все сохранённые параметры виджета с базовым ID recent-posts. Будьте внимательны с удалением, лучше делать резервную копию базы перед такими операциями.

Как вернуть виджеты обратно, если нужно

Если вы случайно отключили нужный виджет, достаточно убрать или закомментировать соответствующую строку с unregister_widget в вашем коде и обновить сайт. Виджет снова станет доступен в списке.

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

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

<?php
/*
Plugin Name: WPLOCK Disable Widgets
Description: Отключение неиспользуемых виджетов для сайта wplock.ru
Version: 1.0
Author: WPLock
*/

function wplock_disable_widgets_plugin() {
    unregister_widget('WP_Widget_Archives');
    unregister_widget('WP_Widget_Calendar');
    // Добавьте другие виджеты по необходимости
}
add_action('widgets_init', 'wplock_disable_widgets_plugin', 11);

Такой плагин можно загрузить в директорию wp-content/plugins и активировать через админку.

Выводы и рекомендации

Удаление и отключение неиспользуемых виджетов — простой, но важный этап оптимизации WordPress-сайта. Используйте комбинированный подход:

  • Отключайте виджеты программно через unregister_widget;
  • Проверяйте и удаляйте настройки виджетов из базы данных;
  • Используйте специализированные плагины, например, Clearfy Pro, для удобства;
  • Создавайте кастомные плагины для сохранения изменений при смене темы;
  • Регулярно проверяйте список активных виджетов и убирайте лишние.

Так вы сможете поддерживать порядок в админке, повысить скорость загрузки и безопасность сайта на WordPress.

Как отключить отправку писем WordPress без удаления плагинов
10.02.2026
Как сделать автоподсказку в поиске WordPress
25.02.2026
Как избежать проблемы открытых директорий в WordPress: практические решения и примеры кода
14.01.2026
Как отключить автообновления в WordPress
04.01.2026
Как использовать REST API в WordPress для создания своего плагина
08.12.2025