Описание customize_controls_init
— Action
Хук customize_controls_init позволяет разработчикам добавлять свои собственные элементы управления в интерфейс настройки WordPress. Он срабатывает во время инициализации элементов управления кастомайзера, что дает возможность модифицировать интерфейс настройки тем и плагинов
Примеры использования
Пример добавления нового текстового поля в кастомайзер:
add_action('customize_controls_init', function() {
global $wp_customize;
$wp_customize->add_setting('my_custom_text_setting', array('default' => ''));
$wp_customize->add_control('my_custom_text_control', array(
'label' => __('Мой кастомный текст'),
'section' => 'title_tagline',
'settings' => 'my_custom_text_setting',
'type' => 'text'
));
});
Этот код добавляет текстовое поле в секцию ‘Основные настройки’ кастомайзера
Пример добавления выпадающего списка в кастомайзер:
add_action('customize_controls_init', function() {
global $wp_customize;
$wp_customize->add_setting('my_custom_select_setting', array('default' => 'option1'));
$wp_customize->add_control('my_custom_select_control', array(
'label' => __('Выберите опцию'),
'section' => 'title_tagline',
'settings' => 'my_custom_select_setting',
'type' => 'select',
'choices' => array(
'option1' => __('Опция 1'),
'option2' => __('Опция 2')
)
));
});
Здесь мы добавляем выпадающий список с двумя опциями в кастомайзер
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо добавить пользовательские элементы управления в кастомайзер WordPress
– Производительность
Хук не должен значительно влиять на производительность, так как он используется для добавления элементов интерфейса
– Предупреждения
Обязательно проверяйте, существует ли секция, к которой вы хотите добавить контроллеры, чтобы избежать ошибок
Альтернативы
Тип: action
Этот хук позволяет добавлять настройки и секции кастомайзера, а не только элементы управления
Используйте его, если необходимо добавить новые настройки и секции в кастомайзер