WooCommerce:删除产品写面板选项卡

use*_*680 3 wordpress woocommerce

我正在使用WooCommerce,我想在后端隐藏"Linked Products"选项卡.我找到了一个钩子来添加tabs(woocommerce_product_write_panel_tabs),但我不确定是否也可以用这个钩子隐藏某些标签.

谢谢你的帮助!

产品写面板选项卡

小智 6

所以我遇到了同样的问题.Woocommerce提供了一个可以处理这个过滤器的过滤器(正如它们所做的一样).过滤器是'woocommerce_product_data_tabs'.

function remove_linked_products($tabs){
    unset($tabs['linked_product']);
    return($tabs);
}
add_filter('woocommerce_product_data_tabs', 'remove_linked_products', 10, 1);
Run Code Online (Sandbox Code Playgroud)

这将删除链接的产品标签.您还可以使用其数组索引取消设置其他选项卡.以下是class-wc-meta-box-product-data.php中的过滤器应用程序的副本.

$product_data_tabs = apply_filters( 'woocommerce_product_data_tabs', array(
    'general' => array(
        'label'  => __( 'General', 'woocommerce' ),
        'target' => 'general_product_data',
        'class'  => array( 'hide_if_grouped' ),
    ),
    'inventory' => array(
        'label'  => __( 'Inventory', 'woocommerce' ),
        'target' => 'inventory_product_data',
        'class'  => array( 'show_if_simple', 'show_if_variable', 'show_if_grouped' ),
    ),
    'shipping' => array(
        'label'  => __( 'Shipping', 'woocommerce' ),
        'target' => 'shipping_product_data',
        'class'  => array( 'hide_if_virtual', 'hide_if_grouped', 'hide_if_external' ),
    ),
    'linked_product' => array(
        'label'  => __( 'Linked Products', 'woocommerce' ),
        'target' => 'linked_product_data',
        'class'  => array(),
    ),
    'attribute' => array(
        'label'  => __( 'Attributes', 'woocommerce' ),
        'target' => 'product_attributes',
        'class'  => array(),
    ),
    'variations' => array(
        'label'  => __( 'Variations', 'woocommerce' ),
        'target' => 'variable_product_options',
        'class'  => array( 'variations_tab', 'show_if_variable' ),
    ),
    'advanced' => array(
        'label'  => __( 'Advanced', 'woocommerce' ),
        'target' => 'advanced_product_data',
        'class'  => array(),
    )
));
Run Code Online (Sandbox Code Playgroud)

因此,只需将未设置($ tabs ['linked_product']替换为要从后端删除的任何选项卡.