Сегодня хочу рассказать об использовании разных виджетов на разных страницах вашего сайта. Или блога 🙂 хотя, мне кажется, для тех, кто создает сайт на WordPress это более актуально. Идея проста – как и в прошлой инструкции http://4itaz.ru/wordpress-pokazyvat-tolko-dlya-admina/ – создание нескольких сайдбаров и показ их на разных страницах. Инструкция здесь http://4itaz.ru/raznye-vidzhety-na-raznyx-stranicax/
Разные виджеты на разных страницах

Все замечательно, кроме одной мелочи. Если у меня только один виджет «ссылки», то я могу разместить его только на один сайдбар.
хм.. как вариант – дубблировать виджет, или, например, сделать несколько текстовых виджетов. Однако, не слишком удобно, если ссылки в них часто обновляются. Но если нет – то самое оно )
Или находим виджет, который может выполнять PHP (например http://www.daikos.net/widgets/daikos-text-widget/ или http://samsarin.com/samsarin-php-widget) и внутри прописываем
Ну сдублировать виджет не так и просто. 😉
Я сам давно столкнулся с этой же проблемой, потому что некоторые клиенты хотят, чтобы сайдбары менялись в зависимости от типов страниц, рубрик или по каким-то другим условиям. Поэтому простым добавлением сайдбаров дело не обходится. Сейчас решается задача немного по другому – настраиваются все виджеты, а вывод в сайдбарах (в шаблоне) осуществляется через php-функции (виджетов – типа: wp_widget_text). таким образом в шаблоне можно конфигурировать вывод функций под любые условия. Правда здесь теряется некоторая гибкость в настройках. Как доведу код до ума, выложу у себя в блоге.
я попробовал сделать как описано тут http://maxsite.org/otobrazhenie-vidzhetov-v-saydbarah-pri-raznyih-usloviyah
Было такое ощущение, что правила отображения виджетов просто игнорировались. К примеру я задал не показвать на главной календарь, а он всё равно показывался. Потом я вспомнил, что в настройках блога (Настройки чтения) указал, что на главной странице нужно отображать статическую страницу, а не последние 10 записей. Поэтому и получается такая ерунда с виджетами. Попробовал изменить настройки: вернул на главную "последние 10 записей" и всё стало на свои места… Но мне очень нужно чтобы первой страницей была именна та которую я указал. В php я слабо разбираюсь, без вашей помощи не смогу разобраться… :rolleyes:
http://forum.maxsite.org/viewtopic.php?id=576
Подскажите пожалуйста, а где можно найти и отредактировать содержимое виджетов? Скажем, сейчас при выводе виджета у меня следующий код
Мне хотелось бы внести изменения в html, где это можно сделать?
http://maxsite.org/ras31
ну и «до кучи»:
http://maxsite.org/ras32
http://maxsite.org/ras33
sonika, спасибо за ссылки. кое что я уже читал и пытался применить.
чисто интуитивно пытался сделать так:
Странно. но результатов это не дало.
Насколько понял мне придётся вручную править всё внутри достаточно объёмного wp-includes/widgets.php?
может ctrl+F5?
sonika, ))) я сказал что в php только не разбираюсь. обновить страничку умею )))
Нет, тут что-то другое…
Вообщем, мне пока не удалось забраться внутрь самого виджета через файл function.php (код в нём в моём посте чуть выше) Через него могу только изменять эту строчку ‘name’ => ‘Настройка виджетов’. Но это видно только в админской панели, так что не особо полезно. Все остальные параметры игнорируются, как бы я их не менял…
С кодом который ВНЕ виджета всё проще, тут я разобрался вроде, писал наугад, так как не знаю синтаксиса но вроде всё работает
sidebar.php:
Кстати заметил что в виджете в основном инфа выводится ненумерованным списком (UL) , например те же ссылки в recent_comments. А если я хочу чтобы они выводились нумерованным списком (OL)?
Через function.php это править не получится вроде… То есть всё же надо лезть в wp-includes/widgets.php?
Не обижайтесь 🙂