php - 如果产品属于特定类别 WooCommerce,我如何设置选项卡(仅)

标签 php wordpress woocommerce categories product

我有一个选项卡集来添加一个包含 WooCommerce 规范的选项卡。我想将它包装到一个 if 语句中,以便仅在产品属于某个类别时才设置选项卡。

add_filter( 'woocommerce_product_tabs', 'woo_custom_product_tabs' );

function woo_custom_product_tabs( $tabs ) {

    global $post;

    if ($product->is_category("Mobile Phones")) { 
        $tabs['custom_specification'] = array( 'title' => __( 'Specification', 'woocommerce' ), 'priority' => 50, 'callback' => 'woo_custom_specification_content' );
    }
}

检查 if 语句括号中 WooCommerce 类别的正确代码是什么?

最佳答案

如果您在类别存档页面上,条件 is_category() 将返回 true。

由于您需要单个产品页面的条件,因此您将以 is_product() 条件组合的方式定位单个产品页面:

if ( is_product() && has_term( 'Mobile Phones', 'product_cat' ) ) {
    $tabs['custom_specification'] = array( 'title' => __( 'Specification', 'woocommerce' ), 'priority' => 50, 'callback' => 'woo_custom_specification_content' );
}

或者你也可以尝试,以防万一,这个也是:

if( is_product() && has_category( 'Mobile Phones' ) ) {
    $tabs['custom_specification'] = array( 'title' => __( 'Specification', 'woocommerce' ), 'priority' => 50, 'callback' => 'woo_custom_specification_content' );
}

@edit:您在函数末尾最后一个右括号 } 之前错过了 return $tabs;/strong>.


引用资料:

关于php - 如果产品属于特定类别 WooCommerce,我如何设置选项卡(仅),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38613769/

相关文章:

php - Woocommerce 自定义字段 : some values are not in the order page

php - 使用 php 和 mysql 获取 url 的问题

php - 区分数学用户输入和其他所有输入

wordpress - WordPress 更新失败 - 这通常是由于文件权限不一致造成的。 : wp-admin/includes/update-core. php

mysql - 连接到 mysql 的问题,随机数据库连接错误,

php - 在 WooCommerce 订单状态更改时添加用户元数据作为订单元

php - Woocommerce 显示带有产品图片的产品

php - 我的mysqli插入查询无法正常工作

php - 使用 PHP 代码在 MySql 中导入 CSV 文件

php - 如何在wordpress中使用json API获取上传的文件