1

如果产品没有评级,Woocommerce 将不会显示任何星级。有没有我可以使用的钩子,即使它是 0,也可以始终显示星级?

4

1 回答 1

0

默认情况下,woocommerce 显示评分大于 0 要显示 0 评分,我们需要删除显示评分的操作,例如

remove_action( 'woocommerce_after_shop_loop_item_title', 'woocommerce_template_loop_rating', 5 );

然后添加自定义功能以显示评级

add_action('woocommerce_after_shop_loop_item', 'get_star_rating' );
function get_star_rating()
{
    global $woocommerce, $product;
    $average = $product->get_average_rating();

    echo '<div class="star-rating"><span style="width:'.( ( $average / 5 ) * 100 ) . '%"><strong itemprop="ratingValue" class="rating">'.$average.'</strong> '.__( 'out of 5', 'woocommerce' ).'</span></div>';
}

在https://stackoverflow.com/a/20794406/846060中找到的解决方案

于 2016-12-18T09:20:33.457 回答