WP Guru's,
我正在测试enqueue/dequeue,因为在我的子主题中,我试图覆盖父主题中的enqueued脚本块。
也许我做错了,但我在我的子主题的functions.php的顶部添加了这段代码。我不希望看到这句话的回声,但我看到了。
我不高兴地上下移动优先级属性。它应该是非常直接的,除非我做错了。
我做错了什么?
感谢add_action('wp_enqueue_scripts', 'sometest', 90);
add_action('wp_enqueue_scripts', 'undo_it',80);
function sometest() {
echo '****** IF YOU SEE ME THEN ITS NOT WORKING *****************';
}
function undo_it() {
wp_dequeue_script( 'sometest' );
wp_deregister_script( 'sometest' );
}
我不是百分之百确定你想要完成什么。您在undo_it
中运行的代码将对sometest
中的echo
没有影响。wp_enqueue_script
和相关函数用于将JavaScript文件注入页面,而不是修改挂钩的PHP函数。
您可能正在寻找remove_action
函数。
最好使用实际脚本进行测试,而不是使用echo
。主要问题是wp_dequeue_script
和wp_deregister_script
接受$handle
作为参数,而不是函数名。
function de_script() {
wp_dequeue_script( 'jquery' );
wp_deregister_script( 'jquery' );
}
在这种情况下,jquery
是wp_enqueue_script
和wp_register_script
中使用的$handle
这些都写在这些函数的法典中。http://codex.wordpress.org/Function_Reference/wp_dequeue_scripthttp://codex.wordpress.org/Function_Reference/wp_deregister_scripthttp://codex.wordpress.org/Function_Reference/wp_enqueue_scripthttp://codex.wordpress.org/Function_Reference/wp_register_script
如果父主题没有使用wp_enqueue_script
和wp_register_script
与$handle
,那么他们是做错了