仅在WooCommerce单个产品页面中隐藏某些产品的标签

时间:2016-12-28 20:25:48

标签: php wordpress tabs woocommerce product

我想知道如何在某些单个产品页面上隐藏或删除WooCommerce标签(如果可能的话,使用css或jquery将它们保存在其他页面上)?

Woocommerce div标签:class="woocommerce-tabs wc-tabs-wrapper"

2 个答案:

答案 0 :(得分:3)

可以使用专用的 woocommerce_product_tabs 过滤器钩子来删除某些产品的标签(在单个产品页面上):

add_filter( 'woocommerce_product_tabs', 'conditionaly_removing_product_tabs', 98 );
function conditionaly_removing_product_tabs( $tabs ) {

    // Get the global product object
    global $product;

    // Get the current product ID
    $product_id = method_exists( $product, 'get_id' ) ? $product->get_id() : $product->id;

    // Define HERE your targetted products IDs in this array   <===  <===  <===
    $target_products_ids = array(123,152,162);

    // If the current product have the same ID than one of the defined IDs in your array,… 
    // we remove the tab.
    if(in_array($product_id, $target_products_ids)){

        // KEEP BELOW ONLY THE TABS YOU NEED TO REMOVE   <===  <===  <===  <===
        unset( $tabs['description'] ); // (Description tab)  
        unset( $tabs['reviews'] );     // (Reviews tab)
        unset( $tabs['additional_information'] ); // (Additional information tab)       
    }

    return $tabs;

}

代码位于您的活动子主题(活动主题或任何插件文件)的 function.php 文件中。

此代码经过测试并有效。

基于原始的WooCommerce代码段:Editing product data tabs

答案 1 :(得分:1)

在某些单品上删除WooCommerce标签非常容易。您可以使用CSS轻松完成此操作。每个WC产品都有唯一的产品ID,请查看此http://prntscr.com/dp2c79,您可以使用浏览器检查元素或源代码查找。 找到产品ID,然后使用&#39;显示:无&#39;该产品ID的标签。

示例:#product-834 .tabs {display:none!important;}

此致