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

如何查找并移除WooCommerce后台产品页的自定义标签?

移除WooCommerce后台产品页自定义标签的方法

如果默认的unset($tabs['key'])方法无效,说明这些标签不是通过标准的woocommerce_product_data_tabs过滤器添加的,试试以下几种方案:

一、通过浏览器开发者工具定位标签,用CSS隐藏

  1. 打开产品编辑后台,右键点击要移除的标签,选择「检查」
  2. 找到标签对应的<li>元素,记下它的ID(比如li#wc_crm_product_tab),同时找到对应面板的ID(通常和标签ID对应,比如#wc_crm_product_panel)
  3. 添加以下代码到主题的functions.php文件,通过后台样式隐藏这些元素:
add_action('admin_enqueue_scripts', function() {
    global $pagenow;
    // 仅在产品编辑页生效
    if ($pagenow === 'post.php' && get_post_type() === 'product') {
        // 替换成你找到的标签和面板ID
        $custom_css = 'li#wc_crm_product_tab, #wc_crm_product_panel { display: none !important; }';
        wp_add_inline_style('woocommerce_admin_styles', $custom_css);
    }
});

二、查找插件注册标签的钩子,用PHP移除

  1. 对于WooCommerce Subscription这类插件,它们可能用了自定义钩子或直接添加标签,你可以:
    • 用代码编辑器搜索插件目录里的add_action或add_filter,关键词比如woocommerce_product_data_tabs、woocommerce_product_data_panels
    • 找到插件注册标签的代码,比如类似:
      add_filter('woocommerce_product_data_tabs', 'wc_subscriptions_add_product_tab', 10);
      
  2. 然后用remove_filter移除该回调,注意优先级要和插件注册时一致:
    add_action('init', function() {
        remove_filter('woocommerce_product_data_tabs', 'wc_subscriptions_add_product_tab', 10);
    });
    

三、输出所有钩子回调,定位注册函数

如果找不到插件的注册代码,可以添加以下代码到functions.php,查看所有挂在产品标签相关钩子上的回调:

add_action('woocommerce_product_data_tabs', function($tabs) {
    global $wp_filter;
    // 输出woocommerce_product_data_tabs钩子的所有回调
    var_dump($wp_filter['woocommerce_product_data_tabs']);
    // 同时检查woocommerce_product_data_panels钩子
    var_dump($wp_filter['woocommerce_product_data_panels']);
    return $tabs;
}, 9999);

刷新产品编辑页后,查看页面输出的内容,找到对应插件的回调函数名,再用remove_action或remove_filter移除。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 00:35:23