Как удалить виджеты из футера WordPress без плагинов

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

Что такое виджеты в футере и как они подключаются

Виджеты — это блоки с контентом или функционалом, которые можно размещать в специальных областях (сайдбарах). Футер часто регистрируется в теме как отдельная область для виджетов, например footer-1, footer-2 и так далее.

Чтобы понять, как удалить виджеты из футера, сначала нужно знать, как они там появились. Обычно в файле functions.php темы регистрируются сайдбары, а в шаблоне футера (footer.php) вызывается функция dynamic_sidebar() для вывода виджетов.

Пример регистрации футерного виджета в functions.php:

function wpsource_register_footer_widgets() {
    register_sidebar(array(
        'name'          => 'Футер 1',
        'id'            => 'footer-1',
        'description'   => 'Первая область виджетов в футере',
        'before_widget' => '<div class="footer-widget">',
        'after_widget'  => '</div>',
        'before_title'  => '<h4>',
        'after_title'   => '</h4>'
    ));
}
add_action('widgets_init', 'wpsource_register_footer_widgets');

А в footer.php вывод:

if (is_active_sidebar('footer-1')) {
    dynamic_sidebar('footer-1');
}

Удаление виджетов из футера через functions.php

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

Напишем функцию, которая отключит все виджеты в футере с ID footer-1:

function wpsource_disable_footer_widgets($sidebars_widgets) {
    if (isset($sidebars_widgets['footer-1'])) {
        $sidebars_widgets['footer-1'] = array(); // очищаем виджеты
    }
    return $sidebars_widgets;
}
add_filter('sidebars_widgets', 'wpsource_disable_footer_widgets');

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

Как удалить виджеты из футера выборочно

Если нужно убрать не все виджеты, а только некоторые, например, по ID виджета, можно сделать так:

function wpsource_remove_specific_footer_widgets($sidebars_widgets) {
    if (!empty($sidebars_widgets['footer-1'])) {
        foreach ($sidebars_widgets['footer-1'] as $key => $widget_id) {
            // Удаляем виджет с ID 'text-3' (пример)
            if ($widget_id === 'text-3') {
                unset($sidebars_widgets['footer-1'][$key]);
            }
        }
        // Сохраняем ключи массива
        $sidebars_widgets['footer-1'] = array_values($sidebars_widgets['footer-1']);
    }
    return $sidebars_widgets;
}
add_filter('sidebars_widgets', 'wpsource_remove_specific_footer_widgets');

Чтобы узнать ID виджета, зайдите в админку WordPress в раздел Внешний вид - Виджеты и наведите на название виджета — внизу браузера будет URL с параметром widget-id. Также можно посмотреть в коде страницы.

Удаление регистрации футерных виджетов

Другой способ — полностью убрать регистрацию футерных виджетов. Если вы контролируете тему или дочернюю тему, можно просто удалить или закомментировать функцию регистрации в functions.php:

// Удаляем регистрацию футерных виджетов
remove_action('widgets_init', 'wpsource_register_footer_widgets');

Или можно отменить регистрацию после инициализации:

function wpsource_unregister_footer_widgets() {
    unregister_sidebar('footer-1');
}
add_action('widgets_init', 'wpsource_unregister_footer_widgets', 11);

Обратите внимание, что если в шаблоне футера вызывается dynamic_sidebar('footer-1'), то после отмены регистрации функция ничего выводить не будет, но сам вызов останется.

Практика: пример полного удаления виджетов с корректировкой шаблона

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

  1. Отключить виджеты через фильтр sidebars_widgets.
  2. Удалить регистрацию футерных сайдбаров.
  3. Удалить вызов dynamic_sidebar из шаблона footer.php.

Пример кода в functions.php:

function wpsource_remove_footer_widgets_completely($sidebars_widgets) {
    if (isset($sidebars_widgets['footer-1'])) {
        $sidebars_widgets['footer-1'] = array();
    }
    return $sidebars_widgets;
}
add_filter('sidebars_widgets', 'wpsource_remove_footer_widgets_completely');

function wpsource_unregister_footer_sidebars() {
    unregister_sidebar('footer-1');
}
add_action('widgets_init', 'wpsource_unregister_footer_sidebars', 11);

После этого откройте файл footer.php и удалите или закомментируйте код с dynamic_sidebar('footer-1'). Это гарантирует, что пустой контейнер не будет выводиться.

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

Если вы не хотите трогать код, для управления виджетами можно использовать плагины, но это увеличивает нагрузку. Например, плагин Widget Disable позволяет отключать виджеты на определённых страницах, но не полностью удалять из футера.

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

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

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

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

Как запретить роботам индексировать страницы архива в WordPress
20.02.2026
Автоматическое удаление товаров в WooCommerce по сроку годности или дате публикации
20.06.2026
Как создать собственную настройку для темы WordPress в админке
25.11.2025
Как использовать WP-Cron для автоматизации задач в WordPress: практические примеры
25.04.2026
WooCommerce: как убрать статус «Оплаченное» из фильтра заказов в админке
31.05.2026