Материалы 5-го дня

Customize API

Универсальный интерфейс для настройки разных опций темы: цвета, маркеры, виджеты, меню и так далее.

Создание настроек с помощью Kirki Toolkit

Алгоритм действий:

  1. Регистрируем конфиг
  2. Создаем панели и секции
  3. Добавляем поля (контролы)
  4. Используем get_theme_mod() в файлах темы

Регистрируем конфиг:

Kirki::add_config( 'theme_config_id', array(
	'capability'    => 'edit_theme_options',
	'option_type'   => 'theme_mod',
) );

Создаем панели и секции:

Kirki::add_panel( 'panel_id', array(
    'priority'    => 10,
    'title'       => esc_html__( 'My Panel', 'kirki' ),
    'description' => esc_html__( 'My panel description', 'kirki' ),
) );
Kirki::add_section( 'section_id', array(
    'title'          => esc_html__( 'My Section', 'kirki' ),
    'description'    => esc_html__( 'My section description.', 'kirki' ),
    'panel'          => 'panel_id',
    'priority'       => 160,
) );

Добавляем поля/контролы:

Kirki::add_field( 'theme_config_id', [
	'type'     => 'text',
	'settings' => 'text_setting',
	'label'    => esc_html__( 'Text Control', 'kirki' ),
	'section'  => 'section_id',
	'default'  => esc_html__( 'This is a default value', 'kirki' ),
	'priority' => 10,
] );