你的Javascript永远不会运行,因为WordPress在后台以纯PHP的形式运行它,有HTML与你的Javascript相关联。如果我们查看pre_post_update
hook 它指出:
在$wpdb->update()之前调用
它完全在PHP中运行。如果更容易理解我的意思,下面是full code on Trac, 如果您滚动顶部,您会注意到没有与之关联的HTML文档。我相信你需要的是@BradDalton的建议,创建你自己的脚本并将其列在你的帖子类型中(如果与WooCommerce打交道product
).
例如,我们可以将此添加到functions.php
文件:
/** Admin Enqueue **/
function admin_queue( $hook ) {
global $post;
if ( $hook == \'post-new.php\' || $hook == \'post.php\' ) {
if ( \'product\' === $post->post_type ) {
wp_enqueue_script( \'custom-title-here\', get_bloginfo( \'template_directory\' ) . \'/scripts/custom-script.js\', \'jquery\', \'\', true );
}
}
}
add_action( \'admin_enqueue_scripts\', \'admin_queue\' );
有关如何使用的更多信息
wp_enqueue_script
, View Codex. 根据您尝试执行的操作,您可以在提交表单时运行JS:
jQuery( document ).ready( function( $ ) {
$( \'#post\' ).submit( function( e ) {
alert( \'Stopping Form From Submitting.\' );
return false;
} );
} );