一个简单的进入/退出队列不工作


A simple enqueue/dequeue not working

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_scriptwp_deregister_script接受$handle作为参数,而不是函数名。

例如:

function de_script() {
    wp_dequeue_script( 'jquery' );
    wp_deregister_script( 'jquery' );
}

在这种情况下,jquerywp_enqueue_scriptwp_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_scriptwp_register_script$handle,那么他们是做错了