通过WooCommerce中的产品ID获取产品标签

通过WooCommerce中的产品ID获取产品标签

问题描述:

您将如何通过产品ID获取产品标签?通过WooCommerce中的产品ID获取产品标签

在单一产品/标签/ tabs.php下面的代码存在:

$tabs = apply_filters('woocommerce_product_tabs', array()); 

我想基于目前的产品,这是越来越标签?不过,我也想在这里获得其他产品的标签。

目前我有一个产品销售单打。然后我有另一种产品销售相同的物品,但作为订阅。所以我创建了一个自定义字段,告诉WooCommerce这是订阅的单个产品。

现在我想在订阅产品中显示单个产品选项卡,因此我不必在管理区域中输入两次。

我自己的运行实验导致这样的:

$singleProduct = get_field('single_product'); 

if ($singleProduct->ID) : 
    $tabs = 'How do I get the tabs of this product???'; 
endif; 
+0

说,如果一个'产品A'没有任何订购产品,然后将产品'A'将有标签? –

+0

@RaunakGupta正确,其标签应显示在作为产品A的​​订购版本的产品B上。这是因为产品不能同时是单一产品和订购产品。 –

的所有你必须在单打页面添加自定义产品选项卡,然后 你要查询你要显示的内容第一该标签。

下面是代码,这将有助于你:

add_filter('woocommerce_product_tabs', 'woo_new_product_tab'); 

function woo_new_product_tab($tabs) 
{ 
    global $product; 
    //get current product ID 
    $product_id = $product->get_ID(); 
    if (/*add you condition to determine current product will have custom tab or not */) 
    { 
     // Adds the new tab 
     $tabs['test_tab'] = array(
      'title' => __('New Product Tab', 'woocommerce'), 
      'priority' => 50, 
      'callback' => 'wh_woo_new_product_tab_content' 
     ); 
    } 
    return $tabs; 
} 

function wh_woo_new_product_tab_content() 
{ 
    global $product; 
    //get current product ID 
    $product_id = $product->get_ID(); 
    // Now you have the ID you can apply your custom logic 
} 

参考:Add a custom tab

+1

我不想添加自定义选项卡。我只想显示其他产品标签。 –

+0

例如,在产品ID 11上,我想显示产品ID 22选项卡,因为产品ID 22是产品ID 11(订购产品)的单一产品版本。 –

+0

@JimmieJohansson:是的,那么你也需要在产品ID 11页面中创建一个选项卡,并且你必须有一个标志,它决定了#22是需要获取数据的产品,然后你可以获取#22的数据并将它们显示在#11产品页面的自定义选项卡 –