我想获得单个评论的评分值,以创建自定义评论显示,例如,如果用户对一个产品的评分为四星,我只想得到数字4,而不需要任何html。
我知道这个值存储在如下的变量中。但我不知道如何获得每一条评论。
$rating = $product->get_average_rating()
编辑:根据Maxin的回答,我创建了一个显示自定义注释的函数,除了comment\\u meta“rating”之外,其他所有功能都可用。
global $comment;
function custom_comments() { ?>
<div class="comment">
<p><?php comment_author(); ?></p>
<p><?php intval( get_comment_meta( $comment->comment_ID, \'rating\',
true ) ); ?></p>
<p><?php comment_date(); ?></p>
<p><?php comment_text(); ?></p>
</div>
我这样调用函数。
$args = array (
\'post_id\' => $product_id
);
$comments = get_comments($wp_list_comments( array(
\'type\' => \'comment\',
\'callback\' => \'custom_comments\'
), $comments);
评级元返回此错误“尝试获取非对象的属性”且为零。可能是什么?
这起到了作用:
$comments = get_comments(array(
\'post_id\' => $product_id,
));
foreach($comments as $comment) {
<div class="comment">
<p><?php comment_author(); ?></p>
<p><?php echo get_comment_meta( $comment->comment_ID, \'rating\', true); ?
></p>
<p><?php comment_date(); ?></p>
<p><?php comment_text(); ?></p>
</div>
}