查找注释的ACF自定义字段值的总和

时间:2017-01-17 10:27:58

标签: php wordpress advanced-custom-fields

我为评论创建了一些自定义字段,以便在Wordpress网站上进行评论,这些网站是为了将酒店列为评论用户评论而建的。其中一个自定义字段是'star_rating'字段。我需要找到一种方法来获取所有值的总和,以便找到要在搜索结果和商品详情中显示的每个帖子的平均“star_rating”值。

我一直在努力寻找star_rating字段值的总和。我上次使用以下代码但它不起作用,虽然我不明白为什么。任何帮助将不胜感激。

$ratings_sum = 0;
// Arguments for the query
$args = array();
// The comment query
$comments_query = new WP_Comment_Query;
$comments = $comments_query->query( $args );
// The comment loop
if ( !empty( $comments ) ) {
    foreach ( $comments as $comment ) {
        $ratings_sum+= $comment->star_rating;
    }
} else {
    // echo 'No comments found.';
}
echo $ratings_sum;

非常感谢提前。

2 个答案:

答案 0 :(得分:1)

如果您使用的是ACF自定义字段插件,请尝试使用get_field()功能。您无法像这样访问自定义字段$comment->star_rating

答案 1 :(得分:0)

请尝试以下自定义查询获取星级评分:

SELECT SUM(meta_value) FROM wp_commentmeta WHERE comment_id IN (SELECT comment_ID FROM wp_comments WHERE comment_post_ID = '//your post id') and meta_key='star_rating';