Реєструє панель віджетів (місце, куди розміщуються віджети в адмін-панелі, щоб потім вивести їх в лицьовій частині).
register_sidebar () реєструє панель (місце, контейнер) для віждетов і формат виведення для кожного віджета: html тег заголовка, html тег до і після віджета. Зареєструвавши панель, в адмін-панелі з'явиться місце, куди можна поміщати віджети. Розмістивши віджети в панелі, ми зможемо вивести панель з віджетами в шаблоні за допомогою функції dynamic_sidebar (). (Див. Приклад 2).
Функцію потрібно підключати до події widgets_init.
Функція підтримки віджетів: add_theme_support ( 'widgets') повинна бути активована для теми, в functions.php. Якщо цього немає, то register_sidebar () активує її автоматично.
Не використовуйте назви ідентифікаторів для параметра ID з цього списку. Там же, за посиланням, ви знайдете невелику функцію, яка збирає вже використовувані ID в WordPress.
Використовуйте register_sidebars (). щоб створити кілька панелей за раз. Це дозволить створити унікальне ім'я для кожної панелі, наприклад: "Правий сайдбар", "Лівий сайдбар". Незважаючи на те, що ці назви видно тільки в адмін-панелі, важливо дати користувачеві уявлення про те де буде виводитися панель.
register_sidebars () також рекомендується використовувати, якщо потрібно зареєструвати кілька однотипних панелей для віждетов (назви відрізняються числами), наприклад: Панель 1. Панель 2. Панель 3.
Дефолтні значення параметрів before / after розраховані на теми, які створюють бічні панелі у вигляді LI списку з заголовками в H2 тезі. Така реєстрація рекомендується розробниками WordPress для всіх тем.
Якщо з якихось причин, маркування потрібно змінити, рекомендується скопіювати id (id = "% 1 $ s") і class (class = "widget% 2 $ s") атрибути як зазначено за замовчуванням і не вказувати їх жорстко. Потрібно це, щоб вони створювалися динамічно за допомогою функції sprintf ().
Не можна залишати параметри name і id порожніми!
Їх можна або не вказувати взагалі, або обов'язково вказати при цьому, потрібно щоб вони були унікальними і не порожніми.
Якщо не визначити id або name, то для них будуть використані значення за замовчуванням з инкрементом:
Де $ i буде числом рівним кількістю панелей на сайті + 1.
Хукі з функції:
повертає
Рядок. Ідентифікатор переданий в параметрі ID.
Використання
шаблон використання
Аргументи для реєстрації панелі віджетів. Можна вказувати у вигляді рядка або масиву:
Якщо у вигляді рядка, тоді аргументи потрібно розділяти знаком :
Ті ж аргументи в масиві:
За замовчуванням: параметри за замовчуванням.
Аргументи параметра $ args
name (рядок) Назва панелі віджетів. Назва буде видно в адмін-панелі WordPress. За замовчуванням "Бічна колонка 1" (локалізація від Sidebar $ i. Де $ i порядковий номер сайдбара). Значення не повинно бути порожнім!
За замовчуванням: sprintf (__ ( 'Sidebar.'), $ I) id (рядок) Ідентифікатор віджета. Рядок, в якій не повинно бути великих літер і пробілів. Значення не повинно бути порожнім, якщо залишити цей параметр порожнім, то в режимі розробки (при дебаге) отримаєте замітку типу E_USER_NOTICE.
За замовчуванням: "sidebar- $ i" description (рядок) Текст описує де буде виводитися панель віджетів. Показується в панелі управління віджетами.
За замовчуванням: '' class (рядок) CSS клас, який буде додано головному HTML тегу панелі віджетів.
За замовчуванням: '' before_widget (рядок) HTML код, який буде розташований перед кожним віджетом в панелі. наприклад:
За замовчуванням: '
За замовчуванням: " \ N "before_title (рядок) HTML код перед заголовком віджета.
За замовчуванням: '
'After_title (рядок) HTML код після заголовка віджета.
За замовчуванням: "
\ N "
Основне призначення цих аргументів, вказати відповідні для теми теги обертаючі кожен віджет і його заголовок. У WordPress прийнято обертати віджет в li тег, а заголовок віджета в тег h2.
# 1 Реєстрація віджетів для бічній панелі сайту
Код нижче, зареєструє панель під назвою "Права бічна панель сайту". Назва панелі буде обгорнута в теги
Після того, як ми розмістимо цей код в файл теми functions.php, в адмін-панелі на сторінці віджетів, з'явиться панель, куди ми зможемо додати віджети. У шаблоні ця панель виводиться за допомогою функції dynamic_sidebar ():
# 2 Зареєструємо панель віджетів для головної сторінки сайту
Додамо код в functions.php:
У файл home.php вставимо висновок панелі:
Код register sidebar. wp-includes / widgets.php WP 4.8.3
cвязана функції
Otshelnik-Fm 181 cайт: across-ocean.otshelnik-fm.ru
Тимур привіт. Допиши про ID віджета: "Якщо ви не встановите значення ідентифікатор аргументу, ви отримаєте повідомлення E_USER_NOTICE в режимі налагодження, починаючи з версії 4.2."
Трохи не зрозумів що дописати і чому, і не знайшов цього в документації.
Якщо не встановити id або name, то для них будуть використані значення за замовчуванням з инкрементом.
Де $ i буде збільшуватися автоматично на число: зареєстровані на сайті панелі + 1.