Давненько я всеже не писал
Сам столкнулся, да и люди тоже с такой вот проблемой когда нужно в разных категориях, отдельно взятых постах, страницах, отдавать контент в sidebar отличный от главной (например разные баннеры для разных категорий WordPress)
Эту проблему решает многофункциональный плагин My Custom Widgets
краткий функционал:
1. Позволяет создавать свои WidGet с контентом содержащим HTML, PHP, JavaScript кодом
2. Позволяет любой созданный виджет закрепить (отображать) за любым (любыми) постами, страницами, категориями вашего блога.
процесс установки описывать небуду, так как он стандартен, плагин устанавливается как и любой другой плагин WordPress
После установки, активации плагина переходим в раздел Setting –>> My Custom Widget
Из картинки видно имеем три блока
Filter definition - блок настройки зон отображения определенного WidGet. По умолчанию есть такие зоны как
all - виджет отображается везде
archive - только на страницах архивов
category - толкь она страницах всех категорий
home - только на главной
page - только на всех страницах
search - только на странице результатов поиска
single - только на страницах постов
tag - на страницах тэгов
второй блок и третий блок
Miscellaneous, Layout - дополнительные настройки плагина, визуальные эффекты и т.д. подробно описывать не буду так как глобально они ничего не меняют
И блок
Administration - название блока говрит само за себя
Есть и вторая страница с настройками работы плагина перейдем к ней чуть позже
А теперь самое главное, работа плагин.
дано необходимо показывать банер АА на странице ID 145, а также категории ID 25 для этого нам необходимо создать зону, в блоке Filter definition в низу в левое пустое поле вписываем название допустим АА14525, в правое поле вписываем парметры а именно is_page(145)||is_category(25) - справа нажимаем значек добавить, зона создана. Допустим если нам необходимо показывать данный банер в трех категориях (ID25,ID34,ID40) и странице ID145 синтакси будет is_page(145)||is_category(array(25,34,40))
ID страницы, категории, поста - можно посмотерть в ссылке на редактирование
под третим блоком Layout - нажимаем клавишу Save ALL, теперь переходим к созданию самого виджета и его контента, в правим нижнем углу нажимаем ссылку for widget configuration click here »
ну здесь все просто, в пустое поле вписываем название своего банера (произвольное), жмем на “Карандашик” - открывается поле, выбираем формат HTML или PHP, пишем свой код, под полем выбираем созданную нами зону, спарва нажимаем значек “Дискеты” чтобы сохранить или “Лупы” чтобы протестировать работу своего кода.
ниже жмем буттон Save All, переходим в настройки темы - Widgets активируем свой Виджет и наслаждаемся результатом
P.S. будьте внимательны в синтаксисе при создании зоны
