如何解决在WooCommerce商店页面上显示自定义分类术语
我正在弄清楚如何在WooCommerce商店循环中显示自定义分类法。
我找到了this answer,它为我指明了正确的方向。我已经将答案中的代码修改为以下内容:
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(),'<br /><span class="posted_in">' . _n( 'Feature:','Features:','</span>' );
我将Vendor
和Vendors
(分类的名称)更改为Feature
和Features
。但我实际上想将其完全删除。
我想以以下格式输出自定义分类术语:
Term1 | Term2 | Term3
上面的行将它们输出为:
Features: Term1,Term2,Term3
我还需要在输出周围加上<span></span>
,以便可以使用CSS设置样式。
我要进行哪些更改才能获得所需的输出? (只是用管道|
隔开的分类术语,没有别的吗?
###更新 在评论中,斯瓦德瓦建议我看看this page,而这正是我需要看到的。
基于该页面上的信息,我将(输出)代码行更改为此:
echo get_the_term_list( $product->get_id(),'<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>' )
其中第三个参数是内容前的内容,第四个参数是分隔符,第五个参数是内容后的内容。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。