如何显示 WooCommerce 产品的自定义分类?

Posted

技术标签:

【中文标题】如何显示 WooCommerce 产品的自定义分类?【英文标题】:How to display custom taxonomy of the WooCommerce product? 【发布时间】:2019-06-15 03:48:09 【问题描述】:

我想在 WooCommerce 产品出现的任何地方显示自定义分类名称及其 URL:

    在主页上 (https://rockers.pl/) - 我有最畅销和最新产品的简码 在存档页面上 在单个产品页面上

我为艺术家创建了自定义产品分类:

name: artysci
label: Artyści
singular_label: Artysta
description: ""
public: true
publicly_queryable: true
hierarchical: true
show_ui: true
show_in_menu: true
show_in_nav_menus: true
query_var: true
query_var_slug: ""
rewrite: true
rewrite_slug: ""
rewrite_withfront: true
rewrite_hierarchical: true
show_admin_column: true
show_in_rest: true
show_in_quick_edit: ""
rest_base: ""
rest_controller_class: ""
meta_box_cb: ""

现在 - 在产品标题附近 - 我需要显示艺术家姓名及其分类的 URL。非常感谢您的帮助。

【问题讨论】:

【参考方案1】:

对于存档页面:

add_action( 'woocommerce_before_shop_loop_item_title', 'add_artist_term');
function add_artist_term() 
    $terms = wp_get_post_terms(get_the_ID(), 'artysci');
    if (!is_wp_error($terms) && !empty($terms))  ?>
        <div class="artist-term-title"><a href="<?php echo esc_url(get_term_link($terms[0])); ?>"><?php echo esc_html($terms[0]->name); ?></a></div>
    <?php 

您还可以使用woocommerce_after_shop_loop_item_title 操作将术语标题放在产品标题之后

对于单个产品页面,您需要在标题添加到下面的挂钩之前或之后添加您的操作。

add_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_title', 5 );

因此,您可以将相同的函数从上面挂钩到 woocommerce_single_product_summary,但优先级为 4 或 6 而不是 5。

【讨论】:

以上是关于如何显示 WooCommerce 产品的自定义分类?的主要内容,如果未能解决你的问题,请参考以下文章

在Woocommerce单个产品页面中显示高于产品价格的自定义字段

在 WooCommerce 产品页面中显示带有标签和值的自定义字段?

在 WooCommerce 产品标题之前显示自定义分类

在 Woocommerce 单一产品页面中显示自定义分类

在常规单个产品页面的自定义选项卡中显示“相关产品”

php 在产品列表上显示自定义分类 - Woocommerce - Wordpress