👍 Научим создавать сайты на WordPress бесплатно за 19 уроков. Подробнее →
Настроил вывод различный Сайбаров с помощью Произвольного поля(ПП), т.е. чтобы На главное, архивах выходил 1 сайдбар,а на Записях всех уже совсем другой.
Реализовал так:
Разные сайдбары для записей (постов)
(условимся, что сайдбары в папке Темы существуют, предназначены для вывода в одном месте лейаута блога и отличаются друг от друга содержимым, пример названий: sidebar.php, sidebar-var2.phpи sidebar-var3.php). Находим в файлах Темы вызов сайдбара: view plaincopy to clipboardprint? и заменяем его на: view plaincopy to clipboardprint? ID, "sidebar", true); get_sidebar($sidebar); ?> Теперь в каждой записи создаете произвольное поле sidebar, а в значение пишете ему часть имени (после sidebar- ) того сайдбара, который хотите показывать при просмотре этой записи: var2или var3. Если у одиночной записи нет произвольного поля sidebar, то выведется сайдбар «по-умолчанию» sidebar.php
Далее, для того чтобы мне не писать в ручную каждый раз это все, сделал вывод в каждой записи автоматически:
add_action('publish_page', 'add_custom_field_automatically'); add_action('publish_post', 'add_custom_field_automatically'); function add_custom_field_automatically($post_ID) { global $wpdb; if(!wp_is_post_revision($post_ID)) { add_post_meta($post_ID, 'sidebar', 'var2', true); } }
Данный метод работает, но почему-то не на всех записях, на каких-то все рабоате отлично на каких-то не мешятся Сайдбар. В Произ. поле задается параметр сам, все тут нормально, но почему-то не принимается как основной.
Кто может подсказать решение данной проблемы или может сказть как можно релизоват ВЫвод различный Сайдбаров более простым методом???
