在 WooCommerce 商店页面上显示自定义分类术语

Display custom taxonomy terms on WooCommerce shop page

我正在研究如何在 WooCommerce 商店循环中显示自定义分类法。

我找到了 ,它为我指明了正确的方向。我已将该答案的代码修改为以下内容:

add_action( 'woocommerce_after_shop_loop_item_title', 'action_product_meta_end' );
function action_product_meta_end() {
    global $product;

    $taxonomy = 'keyfeatures'; // <== Here set your custom taxonomy

   if( ! is_taxonomy( $taxonomy ) ) 
       return; // exit
    
    $term_ids = wp_get_post_terms( $product->get_id(), $taxonomy, array('fields' => 'ids') );

    if ( ! empty($term_ids) ) {
        echo get_the_term_list( $product->get_id(), 'keyfeatures', '<br /><span class="posted_in">' . _n( 'Key Feature:', 'Key Features:', count( $term_ids ), 'woocommerce' ) . ' ', ', ', '</span>' );
    }
}

我卡住的部分是这一行:

echo get_the_term_list( $product->get_id(), 'keyfeatures', '<br /><span class="posted_in">' . _n( 'Feature:', 'Features:', count( $term_ids ), 'woocommerce' ) . ' ', ', ', '</span>' );

我将 VendorVendors(分类名称)更改为 FeatureFeatures。但实际上我想完全删除它。

我想按以下格式输出自定义分类术语:

Term1 | Term2 | Term3

上面的行将它们输出为:

Features: Term1, Term2, Term3

我还需要在输出周围添加一个 <span></span>,这样我就可以使用 CSS.

设置样式

我要进行哪些更改才能获得所需的输出? (只是分类术语,用竖线 | 分隔,没有别的?

###更新 在评论中,swadhwa 建议我查看 this page,这正是我需要查看的内容。

根据该页面上的信息,我将我的(输出)代码行更改为:

echo get_the_term_list( $product->get_id(), 'keyfeatures', '<span class="mks_prod_keyfeatures">', ' | ', '</span>' );

然而,奇怪的是,Wordpress 的输出将 <span class="mks_prod_keyfeatures"'></span> 放入我的分类输出上方的 <a ...></a> 中。所以我还必须将 WC 挂钩从 woocommerce_after_shop_loop_item_title 更改为 woocommerce_after_shop_loop_item。这给出了预期的结果。

你希望你的输出是这样的:

Term1 | Term2 | Term3

那么这应该有所帮助:

get_the_term_list( $product->get_id(), 'keyfeatures', '<span class="posted_in">', '|', '</span>' )

其中第三个参数是前面的内容,第四个是分隔符,第五个是后面的内容。