我想在我的网站上使用一个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应该有一种方法,只是找不到任何示例或文档。