我试过创建一个插件。我的插件文件如下所示。
function wpb_adding_scripts() {
error_log(\'inside the wpb adding scripts\');
wp_register_script(\'trigger_build\', plugins_url(\'js/build-trigger.js\', __FILE__), array(\'jquery\'),\'1.1\', true);
wp_enqueue_script(\'trigger_build\');
}
function invoke_save_post(){
error_log(\'inside the save post function\');
do_action(\'wp_enqueue_scripts\');
}
add_action(\'save_post\', \'invoke_save_post\');
add_action( \'wp_enqueue_scripts\', \'wpb_adding_scripts\' );
我的javascript文件只是一个简单的警报语句。
alert(\'Post has been published/updated\');
但这段代码的作用是,当我查看任何访问其永久链接的帖子时,都会出现警告框,我只想在WordPress的编辑页面中发布/更新帖子后立即显示警告框。
SO网友:Ravi
如果您只需要一个警报,那么为什么要将其写入单独的文件并将其排队?
您可以直接在invoke_save_post
函数使用
echo "<script>alert(\'Api called\');</script>";
或者,如果要将其写入单独的文件中,则必须在函数内编写警报,并在PHP函数内调用该js函数,以便在调用该函数之前不会执行该函数
例如:
function alert_wrapper(){
alert(\'Api has been called\');
}
此处在前端调用您的警报,因为可能会在前端加载此文件,所以每次加载文件时,您的代码都会执行,因为它不会在任何函数中。