You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在WordPress后台取消加载或注销指定WooCommerce脚本

问题原因

之前的代码不生效有两个核心问题:

  • 钩子名拼写错误:WordPress 后台脚本打印相关的正确钩子是admin_print_scripts(末尾为复数s),你写的admin_print_script是不存在的无效钩子,绑定的函数根本不会触发执行
  • 执行优先级不对:WooCommerce 注册wc-admin-order-meta-boxes-js脚本的时机较晚,你设置优先级为1时,该脚本还没完成注册流程,此时执行注销、出队操作自然没有效果
可用代码方案

仅在订单编辑页移除(推荐)

只在WooCommerce的shop_order订单编辑页面移除该脚本,不影响其他后台页面功能,代码如下:

add_action( 'admin_print_scripts', 'unload_wc_order_meta_boxes_js', 999 );
function unload_wc_order_meta_boxes_js() {
    $screen = get_current_screen();
    // 匹配订单编辑页面
    if ( $screen && property_exists($screen, 'id') && $screen->id === 'shop_order' ) {
        wp_dequeue_script( 'wc-admin-order-meta-boxes-js' );
        wp_deregister_script( 'wc-admin-order-meta-boxes-js' );
    }
}

全后台页面移除

如果需要在所有后台管理页面都禁止加载该脚本,去掉页面判断逻辑即可:

add_action( 'admin_print_scripts', 'unload_wc_order_meta_boxes_js_all_admin', 999 );
function unload_wc_order_meta_boxes_js_all_admin() {
    wp_dequeue_script( 'wc-admin-order-meta-boxes-js' );
    wp_deregister_script( 'wc-admin-order-meta-boxes-js' );
}

注意:如果设置999优先级仍然无法移除,可以把优先级数值调大到9999,保证移除操作在WooCommerce完成脚本注册之后执行即可。

内容的提问来源于stack exchange,提问作者bld23232

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 05:30:47