register_sidebars() — позволяет зарегистрировать несколько сайдбаров за раз

Владислав Белецкий
Владислав Белецкий .
Категория:
Комментариев: 0

Функция позволяет сразу зарегистрировать несколько сайдбаров (сайдбары будут однотипными). Ничего не возвращает.

На мой взгляд для этих целей гораздо удобнее использовать функцию register_sidebar(), которая позволяет для каждого из сайдбаров установить уникальные значения параметров (кстати говоря, register_sidebars() и есть ни что иное, как функция register_sidebar(), пропущенная через цикл).

register_sidebars($number = 1, $args = array())
$number
(целое число) количество сайдбаров, которые необходимо зарегистрировать.
$args
(массив|строка) параметры массива $args будут такими же, как и у функции register_sidebar(), единственное отличие, что к указанным id и имени будет автоматически добавляться порядковый номер, например если вы решили зарегистрировать 3 сайдбара и в качестве значения id указали «mysidebar», то зарегистрированные сайдбары будут «mysidebar», «mysidebar-2», «mysidebar-3». С именами сайдбаров дело обстоит немного по-другому, смотрите пример и вам сразу всё станет понятно.

Пример

Зарегистрируем 3 сайдбара. Хук widgets_init обязателен! В примерах в официальной документации он не используется — не обращайте на это внимания, он нужен всё равно (без него сайдбары тоже добавятся, но в будущем это может привести к багам).

function true_register_multiple_sidebars(){
	register_sidebars( 3, array('id'=>'mysidebar', 'name'=>'Мой сайдбар %d') );
}
 
add_action('widgets_init', 'true_register_multiple_sidebars');

В итоге IDы зарегистрированных сайдбаров будут: «mysidebar», «mysidebar-2», «mysidebar-3».
Имена: «Мой сайдбар 1», «Мой сайдбар 2» и «Мой сайдбар 3».

Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии