Woocommerce 如何使类别可链接

Woocommerce how to make the category linkable

我有一个问题,我想显示商店商品的商品类别并使其可点击。

完全是php新手(基本不识字),又没有熟人可以帮忙,求助

add_action( 'woocommerce_after_shop_loop_item_title', 'puhe_show_all_subcats', 2 );
 
function puhe_show_all_subcats() {
   global $product;
   $cats = get_the_terms( $product->get_id(), 'product_cat' );
   if ( empty( $cats ) ) return;
   echo join( ', ', wp_list_pluck( $cats, 'name' ) );
}

我发现我应该在某处使用以下内容

echo '<a href="' . site_url() . '/product-category/' . $term->slug . '">' . $term->name . '</a>';

但就我从编程中所知道的(或很少)而言,我仍然必须在某处定义 $term (?)。

但是可以在某种程度上帮助我让这两个一起工作,以便它会获取正确的类别(第一部分基本上就是这样做的)并且它会获取它的位置并使其成为 link。

您需要使用 get_term_link 来获取您的类别固定链接。

您可以在文档页面上阅读更多相关信息:

WordPress get_term_link function

您可以通过多种方式进行设置,例如,您可以这样做:

global $product;

$cats = get_the_terms( $product->get_id(), 'product_cat' );

foreach ($cats as $cat) {
    echo '<li><a href="'.get_term_link($cat->term_id, 'product_cat').'">'.$cat->name.'</a></li>';
}

既然您使用的是 woocommerce 那么您也可以使用 wc_get_product_category_list

<?php echo wc_get_product_category_list( $product->get_id(), ', ', '<span class="posted_in">' . _n( 'Category:', 'Categories:', count( $product->get_category_ids() ), 'woocommerce' ) . ' ', '</span>' ); ?>

并且 也可能对您有所帮助!

为此最好利用内置的 WooCommerce 功能。尝试使用以下代码:

echo wc_get_product_category_list( $product->get_id());

参考:function_wc_get_product_category_list()