register_sidebar() — регистрирует сайдбар

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

register_sidebar( $args = array() )
$args
(массив|строка) содержит следующие параметры:
name
Название сайдбара (по умолчанию локализованное «Sidebar» и его порядковый номер).
id
Идентификатор сайдбара — латинские символы и цифры в нижнем регистре без пробелов (по умолчанию: sidebar-$i, где $i — порядковый номер сайдбара). Не рекомендуется использовать IDы из этого списка.
description
Описание сайдбара (параметр добавлен в WordPress 2.9). Будет использовано на странице управления виджетами:
Сайдбар с описанием и с добавленным в него виджетом.
class
CSS-класс, который будет дополнительно добавляться к каждому виджету в этом сайдбаре.
before_widget
HTML, который следует разместить непосредственно перед каждым виджетом, по умолчанию: <li id="%1$s" class="widget %2$s">.
after_widget
HTML, который должен добавляться автоматически после каждого виджета, по умолчанию: </li>n.
before_title
HTML перед заголовком каждого виджета, по умолчанию: <h2 class="widgettitle">.
after_title
HTML после заголовка каждого виджета, по умолчанию: </h2>n.

Пример

Обратите внимание, функция должна быть обязательно подключена через хук widgets_init. Код можно вставить в functions.php темы, для которой вы хотите зарегистрировать сайдбар.

Для того, чтобы было легко разобраться в коде, я использовал те же самые значения параметров, которые были использованы при регистрации сайдбара «4я колонка в футере» (скриншот выше).

function true_register_new_sidebar() {
 
    /* Регистрируем сайдбар foot4. */
    register_sidebar(
        array(
            'id' => 'foot4',
            'name' => '4я колонка в футере',
            'description' => 'Данный сайдбар позволит добавить что-либо в четвертую колонку в футере сайта.',
            'before_widget' => '<div id="%1$s" class="widget %2$s">',
            'after_widget' => '</div>',
            'before_title' => '<h4 class="widget-heading">',
            'after_title' => '</h4>'
        )
    );
 
    /* Чтобы зарегистрировать еще сайдбары, просто скопируйте сюда функцию register_sidebar(), заменив в ней несколько параметров. */
}
 
add_action( 'widgets_init', 'true_register_new_sidebar' );

Параметры в функцию можно также передать и в виде строки:

function true_register_new_sidebar_2() {
    register_sidebar('id=sb_left&name=Левый сайдбар&before_title=<h3>&after_title=</h3>');
}
 
add_action( 'widgets_init', 'true_register_new_sidebar_2' );

Окей, сайдбар мы зарегистрировали, а что делать дальше? Как подключить его в теме? Читайте подробное руководство по сайдбарам на моем блоге.

Источник: misha.blog

Миша Рудрастых

Путешествует по миру и рассказывает всем о WordPress лично, у себя в блогах и на курсах в Санкт-Петербурге. Умеет просто объяснять сложные вещи, делает это красиво. Организовывает неплохие WordCamp's, но совсем не умеет слушать чужие доклады.

Добавить комментарий

%d такие блоггеры, как: