Получение значений из полей настройщика Kirki в WordPress Theme - PullRequest
1 голос
/ 11 марта 2020

Я использую плагин Kirki для добавления полей и разделов в настройщик WordPress. Пока что я могу получить поле для добавления в настройщик, но я не понимаю, как вернуть эти данные обратно в мою тему. Я немного устал, так что я могу что-то упустить. Это то, что я до сих пор:

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

Kirki::add_section('footer_section', array(
  'title'          => __('Footer'),
  'description'    => __('Add custom footer here'),
  'panel'          => '', // Not typically needed.
  'priority'       => 160,
  'capability'     => 'edit_theme_options',
  'theme_supports' => '', // Rarely needed.
));


Kirki::add_field('theme_config_id', [
  'type'        => 'editor',
  'settings'    => 'my_setting',
  'label'       => esc_html__('Footer Content', 'kirki'),
  'description' => esc_html__('This content will show in the footer.', 'kirki'),
  'section'     => 'footer_section',
  'default'     => '',
]);

Я читал, пытаясь получить значения отсюда , используя это:

$value = Kirki::get_option( $config_id, $option_id );

Но я не знаете, где (или что) будет $config_id или $option_id? У меня такое чувство, что я что-то упустил, я прочитал документы и чувствую, что не понимаю.

Ответы [ 2 ]

1 голос
/ 04 мая 2020

Это правильный код

$value = Kirki::get_option( 'config_id', 'option_id' );

, поэтому в вашем случае,

$value = Kirki::get_option( 'theme_custom', 'footer_content' );
1 голос
/ 11 марта 2020

Немного покопавшись в inte rnet, я смог прочитать еще немного документации, а также некоторые другие примеры и понять, что я делаю неправильно. В целом, я был близок, но я закончил тем, что очистил его и просто использовал WordPress get_theme_mod() прямо в моем файле шаблона (в данном случае это был файл footer.php).

Вот что я закончил с:

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

Kirki::add_section('footer_section', array(
  'title'          => __('Footer'),
  'description'    => __('Add custom footer here'),
  'panel'          => '', // Not typically needed.
  'priority'       => 160,
  'capability'     => 'edit_theme_options',
  'theme_supports' => '', // Rarely needed.
));


Kirki::add_field('theme_custom', array(
  'type'        => 'editor',
  'settings'    => 'footer_content',
  'label'       => esc_html__('Footer Content', 'kirki'),
  'description' => esc_html__('This content will show in the footer.', 'kirki'),
  'section'     => 'footer_section',
  'default'     => '',
  'priority'    => 10
));

и в моем footer.php файле я добавил это:

<?php $value = get_theme_mod('footer_content', ''); ?>
<?php echo($value); ?>

Конечно, это супер базовый c способ реализуя это. Я собираюсь выяснить, как заставить его обновить sh предварительный просмотр настройщика, прежде чем опубликовать sh. Но пока, похоже, это работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...