Не все темы WordPress содержат достаточное количество сайдбаров, размещенных в нужных пользователю местах. Поэтому создание дополнительных сайдбаров под виджеты всегда было и остается актуальным. Несмотря на то, что «sidebar» переводится как «боковая панель», в WordPress он представляет из себя контейнер для виджетов, который можно разместить в любом месте сайта.
Не забывайте перед внесением изменений в файлы вашего сайта делать его резервную копию для восстановления в случае неудачи. Настоятельно рекомендую на WordPress использовать дочернюю тему.
Регистрация пользовательского сайдбара
Код регистрации сайдбара
Для регистрации нового сайдбара необходимо вставить следующий код в файл functions.php дочерней темы:
1 2 3 4 5 6 7 8 9 10 11 12 |
function new_widgets_init() { register_sidebar( array( 'name' => 'Название сайдбара', 'id' => 'my-sidebar-1', 'description' => 'Краткое описание сайдбара', 'before_widget' => '<div id="%1$s" class="widget %2$s">', 'after_widget' => '</div>', 'before_title' => '<h2 class="widget-title">', 'after_title' => '</h2>', ) ); } add_action( 'widgets_init', 'new_widgets_init' ); |
Код добавьте в конец файла.
Если в вашей дочерней теме нет файла functions.php (раньше такое было возможно), создайте новый текстовый файл, переименуйте его в functions.php и откройте в любом текстовом редакторе (рекомендую Notepad++).
Добавьте в первую строку пустого файла functions.php открытый тег:
1 |
<?php |
Ниже вставьте код регистрации нового сайдбара. Закрывать тег после кода регистрации не нужно. Сохраните изменения и загрузите созданный файл functions.php в каталог дочерней темы.
Расшифровка некоторых элементов
- name — название сайдбара, которое будет отображаться в разделе «Виджеты» админ-панели WordPress. Замените текст в одинарных кавычках «Название сайдбара» на свой.
- id — уникальное имя сайдбара латиницей, идентифицирующее его при обращении к нему из кода. Замените текст в одинарных кавычках «my-sidebar-1» на свой или оставьте этот, в следующих сайдбарах можно будет увеличивать номер на единицу.
- description — краткое описание сайдбара, которое будет отображаться под его названием в разделе «Виджеты» админ-панели WordPress. Замените текст в одинарных кавычках «Краткое описание сайдбара» на свой.
После размещения представленного кода в файле functions.php в разделе «Виджеты» админ-панели WordPress появится новый сайдбар с названием, указанном для элемента name.
Добавление нового сайдбара на сайт
Код добавления сайдбара
Добавляется сайдбар на сайт с помощью следующего кода:
1 2 3 4 5 |
<?php if ( is_active_sidebar( 'my-sidebar-1' ) ) : ?> <div class="widget-my-sidebar-1"> <?php dynamic_sidebar( 'my-sidebar-1' ); ?> </div> <?php endif; ?> |
В трех местах замените my-sidebar-1
на свое уникальное имя сайдбара, если в коде регистрации вы использовали другое имя. Имя класса class="widget-my-sidebar-1"
может пригодиться для прописания стилей.
Где можно разместить код
Разместить код добавления сайдбара можно в header.php, footer.php, шаблонах страниц (page.php) и записей (single.php). Перед тем как вставлять код, скопируйте файл, который вы хотите модифицировать, и поместите его в каталог дочерней темы. Если изменяемый файл в родительской теме расположен в подкаталоге, в дочерней теме тоже необходимо создать подкаталог с таким же именем и разместить файл в нем.