如何使用WordPress functions.php中的ACF使脚本入队和出队()
我想在Wordpress后端的管理面板中创建带有”
高级自定义字段”
的复选框, 以启用和禁用脚本。
我创建了一个复选框字段, 称为import_animejs并进行了检查。然后使用acf / load_field将脚本排入队列, 但由于它无法正常工作, 我缺少了一些东西。
这是我的代码:
function acf_checkbox_scripts() {
wp_register_script('animejs', get_stylesheet_directory_uri() . '/bower_components/animejs/lib/anime.min.js', array('jquery'), '1.1', true);
}
add_action( 'wp_enqueue_scripts', 'acf_checkbox_scripts', 5 );
function load_field_import_animejs( $field ) {
wp_enqueue_script('animejs');
return $field;
}
add_filter('acf/load_field/name=import_animejs', 'load_field_import_animejs');
我希望过滤器能够识别出import_animejs被打勾并让anime.js入队, 但事实并非如此。
【如何使用WordPress functions.php中的ACF使脚本入队和出队()】更新:非常感谢Lachlan的回答可以奏效, 为澄清起见, 我在上面发布的代码中完全删除了acf / load_field” load_field_import_animejs” 函数。
#1你需要执行一条if语句, 并检查该字段是否为true
这可以通过以下方式完成:
function acf_checkbox_scripts() {
if ( get_field( 'import_animejs', 'options' ) ) { // only include 'options' if the acf field is on an acf options page, if not use the post_id of that page
wp_register_script('animejs', get_stylesheet_directory_uri() . '/bower_components/animejs/lib/anime.min.js', array('jquery'), '1.1', true);
wp_enqueue_script('animejs');
}
}add_action( 'wp_enqueue_scripts', 'acf_checkbox_scripts', 5 );
推荐阅读
- 如何仅在自定义帖子类型的单个页面和存档页面上排队脚本和样式()
- 如何使用语法高亮显示来编辑wordpress页面的html
- 如何在WordPress中编辑默认页面((index页面))
- 如何编辑wordpress主题以自动加载产品而不是分页产品
- 如何在子主题上编辑函数()
- 如何显示WordPress类别页面的自定义分类法()
- 如何显示类别页面的子类别()
- 如何用Timber显示单个产品库()
- PHP学习|[PHP面试题]跳槽面试必背-自己最近5年的整理(二)