В предыдущей статье мы немного познакомились с Theme Customizer, а теперь пришло время рассмотреть все его компоненты более подробно.
Category Customizer
WordPress Theme Customizer. Обзор
Начиная с версии 3.4 команда WordPress значительно улучшила Themes Customizer. Theme Customizer позволяет Вам конфигурировать Вашу тему и мнговенно видеть результат в окне предпросмотра. Когда Вы сделали все необходимые изменения достаточно нажать кнопку Save, чтоб все изменения применились. Это позволит сэкономить ваше время и затраченые усилия на тестирование!
Theme Customizer имеет множество преимуществ, вот несколько из них:
- Позволяет экономит много времени на поддержку сайта
- Сокращает риски при модификации дизайна вашего сайта. Все изменения применяются только после нажатия на кнопку «Save», до этого все изменения видите только Вы!
- Возможность тестирования, предпросмотра и конфигурации всех установленных тем без непосредственной их активации
Основы
Themes Customizer состоит из четырех компонентов:
- настройки — управляет опциями, сохранением и обновлением данных, а также определяет где эти данные будут храниться
- секции — позволяют групировать все настройик в отдельные группы
- управление — объеденяет секции и настройки в одно целое.
- менеджер — управляет всеми действиями (регисрация, удаление) компонентов
Эти компоненты обрабатываются четырьмя PHP классами: WP_Customize_Setting
, WP_Customize_Section
,WP_Customize_Control
и WP_Customize_Manager.
Давайте рассмотрим стандартный пример создания собственной секции с настройками:
function your_php_code( $wp_customize ) {
$wp_customize->add_section( 'title_tagline', array(
'title' => __( 'Site Title & Tagline' ),
'priority' => 20,
) );
$wp_customize->add_setting( 'blogname', array(
'default' => get_option( 'blogname' ),
'type' => 'option',
'capability' => 'manage_options',
) );
$wp_customize->add_control( 'blogname', array(
'label' => __( 'Site Title' ),
'section' => 'title_tagline',
) );
}
add_action( 'customize_register', 'your_php_code' );
Как Вы можете увидеть по коду мы создаем секцию c идентификатором title_tagline, после чего создаем опцию (settings) с идентификатором blogname, а также управвляющий элемент который ассоциируется с опцией blogname и секцией title_tagline.
В следующей статье будет больше практики)