ACF中CPT的总和和平均值

时间:2016-06-09 08:57:29

标签: php wordpress advanced-custom-fields

我试图回应自定义帖子类型中所有评分的平均值,但没有达到目标。

编辑:总值未显示,因此我无法计算平均值

我希望有人可以帮助我。

 <activity android:name="com.example.MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
  </activity>

2 个答案:

答案 0 :(得分:1)

尝试此代码$average = $total / $count;放在while循环之后,因为在循环$average之前00/any number = 0

您可以使用get_field()获取“rating_num”

$args = array( 'post_type' => 'ratings' );
$ratings = new WP_Query( $args );

$count = $ratings->post_count;
$total = 0;
//$average = $total / $count;

while ( have_rows('ratings') ) : the_row(); 
    $total += intval( get_field('rating_num'));
endwhile;

$average = $total / $count;
echo $average;
wp_reset_query();
  

修改

已使用round()

echo round(3.453546);

//OUTPUT 3

其他选项是

number_format(3.453546, 0, '.', '');

//OUTPUT 3

答案 1 :(得分:0)

我没有得到正确评级的价值。现在我有了这个,问题主要解决了。

唯一的最后一个问题是该值以无穷小数结束。我怎么能通过一个整数来汇总这个值呢?例如,&#39; 3,453546&#39;成为&#39; 3&#39;?

$args = array( 'post_type' => 'ratings' );
$ratings = new WP_Query( $args );

$count = $ratings->post_count;
$total = 0;

if( $ratings->have_posts() ) : 
    while( $ratings->have_posts() ) : $ratings->the_post();
        $total += intval( get_field('rating_num'));
    endwhile; 
endif;

$average = $total / $count;
echo $average;
wp_reset_query();

编辑:使用

解决了问题
round( $average, 1 );