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

时间:2019-01-21 17:47:39

标签: php wordpress woocommerce

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

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

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

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 个答案:

答案 0 :(得分:0)

对于存档页面:

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。