alekseyruzov
@alekseyruzov
UI

Как отобразить виджет на всех страницах определенной категории?

Есть категория "Отзывы", у нее есть подкатегории — "Африка", "Америка" и т.д. Постам присвоена одна из подкатегорий — "Африка", "Америка" и т.д. Когда в меню нажимаем на "Отзывы", открывается список всех постов. Справа, в сайдбаре висит меню для выбора подкатегорий отзывов — "Африка", "Америка" и т.д.
Я пробую настройки разных плагинов для управления отображением виджетов, но пока не добился того, чтобы этот виджет ВСЕГДА висел в сайдбаре, если мы находимся в любом месте категории "Отзывы".
Что посоветуете?
  • Вопрос задан
  • 1168 просмотров
Пригласить эксперта
Ответы на вопрос 1
azerphoenix
@azerphoenix
Java Software Engineer
Здравствуйте!
Для отображения/скрытия виджетов необходимо воспользоваться условной логикой.
Готовый виджет - https://ru.wordpress.org/plugins/widget-logic/

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

Если вам нужно вывести виджет только в категории Отзывы и ее субкатегориях, то можете использовать:

is_category() && in_array($cat, get_term_children( 5, 'category'))


Здесь, число 5 - ID родительской категории....
Можно написать по другому...
is_category(array(1,2,3,4,5))
1,2,3,4,5 id категорий, на которых нужно отображать виджет...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы