## WP_REGISTER_WIDGET_CONTROL() │ WP 2.2.0
Эта функция регистрирует колбек для управления настройками виджета.
### Возвращаемое значение
Функция ничего не возвращает (null).
### Использование
```php
wp_register_widget_control( $id, $name, $control_callback, $options, ...$params );
-
$id (int|string) (обязательный) — Идентификатор сайдбара.
-
$name (string) (обязательный) — Имя, отображаемое для сайдбара.
-
$control_callback (callable) (обязательный) — Функция, которая вызывается при отображении сайдбара.
-
$options (array) — Массив или строка с параметрами управления.
-
height (int)
Размер не используется.
По умолчанию: 200. -
width (int)
Ширина полностью развернутой формы управления (старайтесь придерживаться ширины по умолчанию).
По умолчанию: 250. -
id_base (int|string)
Обязательный для мультивиджетов, то есть для виджетов, которые позволяют создавать несколько экземпляров, как текстовый виджет. Идентификатор виджета будет выглядеть как{$id_base}-{$unique_number}.
-
-
...$params (смешанный) — Дополнительные параметры, которые передаются в колбек при его вызове.
Примеры
Регистрация настроек виджета
Для настройки пользовательского виджета, функция, ответственная за вывод настроек виджета, регистрируется следующим образом:
// Регистрируем настройки виджета
wp_register_widget_control(
'my_widget', // идентификатор
'my_widget', // имя
'my_widget_control', // имя функции обратного вызова
array('width' => 500), // ширина блока настроек
$param1 = 'foo' // параметр, переданный в my_widget_control($param1)
);
// Форма настроек виджета и сохранение опций
function my_widget_control( $param1 = array() ) {
// Если данные отправлены, сохраняем их в опции
if( isset($_POST['submitted']) ) {
update_option('my_widget_title', $_POST['widgettitle']);
update_option('my_widget_twitterurl', $_POST['twitterurl']);
update_option('my_widget_description', $_POST['description']);
}
// Загружаем опции
$widgettitle = get_option('my_widget_title');
$twitterurl = get_option('my_widget_twitterurl');
$description = get_option('my_widget_description');
?>
Название виджета:
Описание:
Профиль в Twitter (URL):
Заметки
- $wp_registered_widget_controls — глобальный массив, содержащий зарегистрированные управления для виджетов.
- $wp_registered_widget_updates — глобальный массив, содержащий зарегистрированные обновления виджетов.
- $wp_registered_widgets — глобальный массив, содержащий зарегистрированные виджеты.
- $_wp_deprecated_widgets_callbacks — глобальный массив, содержащий устаревшие колбеки для виджетов.
Журнал изменений
- С версии 2.2.0 — функция была введена.
- С версии 5.3.0 — параметр ...$params стал частью сигнатуры функции.
Связанные функции
Сайдбары (Виджеты)
dynamic_sidebar()is_active_sidebar()is_active_widget()is_dynamic_sidebar()is_registered_sidebar()register_sidebar()register_sidebars()register_widget()the_widget()unregister_sidebar()unregister_widget()wp_get_sidebars_widgets()wp_register_sidebar_widget()wp_unregister_sidebar_widget()WP_Widget_Archives()wp_widgets_init()
Виджеты (Сайдбары)
wp_get_sidebar()