複数の投稿からカスタムフィールド内の数字を拾ってきて合算したい
-
読者が5つ星のレート機能を付けられるプラグインが自サイトと相性が悪かったので、ACFで自作できないか試しています。
カスタム投稿とカスタムフィールドを使用してメインの投稿記事に紐づけたレビュー投稿自体はできるようになりましたが、星の平均数の計算がうまくいきません。各レビューの星の数を羅列したものは下記のコードで拾ってこれましたが、拾ってきた数字を合計するなどの計算ができずに困っています。
下記phpを記述しているのはレビューが紐づけされている記事ページです。<?php /*関連付けられたレビューの全数字を表示*/ $post_id = get_the_ID(); //母体となる投稿の投稿者ID取得 $args = array( 'numberposts' => '-1', 'post_type' => 'star-rate' , //投稿タイプの指定 'post_status' => 'all', //すべての投稿タイプ 'meta_key' => 'star-post-id', 'meta_value' => $post_id //IDで紐づけしたのを引っ張る ); $customPosts = get_posts($args); if($customPosts) : foreach($customPosts as $post) : setup_postdata( $post ); $star = get_field('star-rate'); ?> <?php echo $star; ?>, <?php endforeach; endif; wp_reset_postdata(); /*クエリのリセット*/ ?>
これで 3,5,5,2, のように評価した星の数の羅列ができましたが、ここで得られた数字をarray_sumにはめ込んでで合計しようとしてもうまくはまりません。
そもそもget_posts以外にやり方がありそうなのですが、見つけられませんでした。この説明でうまく伝わっているのは不安なのですが、
複数のカスタム投稿からカスタムフィールド内の数字を拾ってきて合算する方法は何かないでしょうか?
4件の返信を表示中 - 1 - 4件目 (全4件中)
4件の返信を表示中 - 1 - 4件目 (全4件中)
- トピック「複数の投稿からカスタムフィールド内の数字を拾ってきて合算したい」には新たに返信することはできません。