Customizer JS API获得定制器字段的值

时间:2019-03-09 15:07:33

标签: javascript wordpress

我想在我的网站上使用一个JavaScript插件,该插件应使用wordpress定制工具中设置的值进行初始化。

Kirki::add_field( 'artist_theme_config', array(
  'type'        => 'select',
  'settings'    => 'gallery_lightgallery_transition',
  'label'       => __( 'Select the transition type of your lightgalleries', 'site-name' ),
  'section'     => 'artist_theme_gallery_style',
  'default'     => 'lg-slide',
  'priority'    => 10,
  'choices'     => array(
    'lg-slide' => esc_attr__( 'Slide', 'site-name' ),
    'lg-fade' => esc_attr__( 'Fade', 'site-name' ),
    'lg-zoom-in' => esc_attr__( 'Zoom In', 'site-name' ),
  ),
) );

我的目标是使用定制器中设置的选项运行初始化逻辑。因此,我需要在自定义javascript中获取设置的值。我发现一种获取值的方法(对吗?):

wp.customize.instance( 'gallery_lightgallery_transition' ).get();

但是,如果打开了定制器,它就可以正常工作。在javascript中获取定制器字段值的正确方法是什么?我是否需要以正确的依赖关系使脚本入队,例如

wp_enqueue_script('sage/customizer_controls.js', asset_path('scripts/customizer_controls.js'), [ 'customize-controls' ], null, true);

?我不想将逻辑放在customizer_controls.js中,而是放在一个名为plugins.js的文件中。 how to pass variables from php to javascript in wordpress上有很长的讨论,但是我猜想新的定制程序api应该有一种方法,只是找不到任何示例或文档。

0 个答案:

没有答案