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

👍 Научим бесплатно правильно создавать сайты на WordPress. Подробнее →

Лично я стараюсь виджетами не пользоваться. Понимаю, что кому-то встраивать коды в шаблоны неудобно и муторно, и легче активировать виджет, чем в редакторе выискивать нужное место для вставки кода. Но у меня другая задача — максимально сократить использование ресурсов, чтобы сделать блог более быстрым и менее прожорливым. Ведь посетителям все равно, как что реализовано, через виджет или с помощью вставки кода, а вот замедление работы блога они сразу заметят. Поэтому я отключаю неиспользуемые места под виджеты.

Делается это с помощью хака — нужно вставить код в functions.php:

function disable_all_widgets($sidebars_widgets) {
	if (is_home())
		$sidebars_widgets = array(false);
	return $sidebars_widgets;
}
add_filter('sidebars_widgets', 'disable_all_widgets');

Если же вы хотите оставить виджеты только на главной странице, то код будет такой:

function disable_all_widgets($sidebars_widgets) {
	//if (is_home())
		$sidebars_widgets = array(false);
	return $sidebars_widgets;
}
add_filter('sidebars_widgets', 'disable_all_widgets');

Пользуйтесь!

Создай свой первый сайт на WordPress

tiaurus

Автор n-wp.ru — блога о WordPress для новичков.

Оцените автора
Добавить комментарий

  1. rainylive

    Круто! Но как быть с плагинами, что не дают альтернативы рукам? Многие все свои настройки хранят в виджетах, хотя я и сам рукам больше доверяю… надежнее, быстрее и всегда в курсе, что у тебя и где

    Ответить
    1. Для вывода виджета в любом месте блога – Как вывести виджет в любом месте блога.

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

      Ответить
  2. incidenter

    Здравствуйте!

    Подскажите пожалуйста, как отключить левый ‘left’ виджет только на главной is_home() странице и включить на всех остальных страницах?

    Этот код выключает все виджеты:

    function disable_all_widgets($sidebars_widgets) {
    if (is_home())
    $sidebars_widgets = array(false);
    return $sidebars_widgets;
    }
    add_filter(‘sidebars_widgets’, ‘disable_all_widgets’);

    Плагины предназначенные для этой задачи его выключают, но только визуально. Контента нет а сам тэг

    остается и страница получается не на всю ширину а с ограничением от блока

    Заранее благодарю.

    Ответить
×
Прокачай свой сайт WordPress!

-20% на премиум темы и плагины

Создай сайт своей мечты ⋙