WooCommerce 附加信息 - 如果为空,则隐藏

3

我目前正在从事电子商务项目,使用的是WordPress中的WooCommerce。

我已经删除了产品数据选项卡,并在摘要部分显示产品描述和其他信息。

我想知道如何隐藏空的附加信息部分?或者生成一个写着“无”的文本?

任何帮助都将不胜感激。谢谢!

2个回答

2
add_filter( 'woocommerce_product_tabs', 'am_ninja_remove_product_tabs', 98 );

function am_ninja_remove_product_tabs( $tabs ) {

    global $product;
    $id = $product->get_id(); // change this to $product->id fro WC less than 2.7

    $my_custom_data = get_post_meta($id, 'am_ninja', true );  

    if(empty($my_custom_data)) {
        unset( $tabs['additional_information'] );   // Remove the additional information tab
    }

    return $tabs;
}

请查看以下代码片段


非常感谢您的帮助。不过,我已经找到了解决方案。我还没有尝试您的方法。再次感谢! - stuckinpixels

1
感谢上面的发布者。
我一直在摸索,参考了[Woocommerce文档][1]之后,找到了解决方案。
步骤如下:
首先,我完全删除了产品数据选项卡。
[1]: https://docs.woocommerce.com/document/woocommerce-product-tabs/
//Removing product data tabs
add_action('init', 'tws_remove_product_tabs');

function tws_remove_product_tabs() {
  remove_action('woocommerce_after_single_product_summary', 'woocommerce_output_product_data_tabs', 10);
}

然后:

//Adding product additional info in summary - if it's empty hide it
add_action('woocommerce_single_product_summary', 'woocommerce_product_additional_information_tab', 25);

function woocommerce_product_additional_information_tab() {
  global $product;
  if ($product - > has_attributes() || $product - > has_dimensions() || $product - > has_weight()) { // Check if product has attributes, dimensions or weight 
    return $tabs;
    wc_get_template('single-product/tabs/additional-information.php');
  }
}

现在它正在工作。
   [1]: https://docs.woocommerce.com

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接