Выводим разные сайдбары для каждой записи и страницы

Если вы используете WordPress, то наверняка заметили, что WordPress отображает один и тот же сайдбар на всем сайте в большинстве тем, за исключением случаев, когда дизайнер самостоятельно создал пользовательскую главную страницу (и в этом случае сайдбар будет отображаться везде, но не на главной). В сегодняшней статье мы поделимся способом, который позволит вам выбирать различные сайдбары для отображения на каждой записи и странице в WordPress. Это отличный сниппет для всех разработчиков и дизайнеров тем WordPress и других интересующихся пользователей.

Эта статья будет использовать Пользовательские поля и возможность вызова определенных шаблонов php. Таким образом подразумевается следующее: вы должны обладать базовыми знаниями HTML и CSS для того, чтобы создать отдельный шаблон.

Первым делом мы открываем файл single.php и/или single.php темы ВП и находим следующий код:

<?php get_sidebar(); ?>

Заменяем этот код следующим:

<?php $sidebar = get_post_meta($post->ID, "sidebar", true);
get_sidebar($sidebar);
?>

Теперь, при добавлении новой записи или страницы где вы хотите вывести свой сайдбар вам нужно добавить пользовательское поле с именем “Sidebar” и в значение записать название файла для этого сайдбара. Например, если вы вставите “devise-page”, он выведет sidebar-devise-page.php в качестве сайдбара.

customfieldspecificsidebar[1]

Файл уже должен находиться в папке с темой для того, чтобы можно было его вызывать. Такой способ обычно используется на сайтах крупных журналов, однако можно использовать и для отдельных страниц. Один из самых простых способов создать новый файл для сайдбара — скопировать ваш текущий код из sidebar.php в новый файл, задать ему нужное имя и отредактировать при необходимости.

VN:F [1.9.22_1171]
Rating: 3.0/5 (4 votes cast)

Об авторе ADv

Занимаюсь разработкой сайтов и магазинов на WordPress. Оказываю платные помощь и консультации. Skype: advokat_b
Scroll To Top