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