add_action("publish_post", "php_func");
function php_func(){
wp_register_script("customscript","link to js file");
wp_enqueue_script("customerscript")
}
我认为上述过程是对的,但那不起作用。上面的func中的两行在直接写入php文件时正常工作(没有动作),但是通过操作,上面的代码不起作用。
function php_func(){
echo "<script>alert("hiii");</script>"; //working but not good method. Also, getting errors like headers sent already .
}
答案 0 :(得分:0)
每个操作都注册到特定的钩子。在代码中到达该挂钩时,将运行注册到该挂钩的所有操作。
当您发布帖子时,publish_post
挂钩将运行您的功能,并将您排入javascript。
你的问题是代码然后遍历所有排队的脚本并运行它们,已经运行了。
你需要在早期的钩子中将它们排队。而针对此的特定钩子构建称为wp_enqueue_scripts
。
add_action("wp_enqueue_scripts", "php_func");
function php_func(){
wp_register_script("customscript","link to js file");
wp_enqueue_script("customerscript")
}
在Codex中可以找到更多信息。