计算每个值在特定元值上的出现次数

时间:2018-09-04 20:47:52

标签: php sql wordpress

我有一个wp_query来检索具有特定meta_key / meta_value的所有帖子类型,但由于该查询在同一页面的其他5个循环中使用,因此我无法更改它。

$posts = new WP_Query(array(
    'posts_per_page'    => -1,
    'post_type'         => 'item',
    'post_status'       => 'publish',

    'meta_query'    => array(
        'relation'      => 'OR',
        array(
            'key'       => 'basicYear',
            'value'     => '1888',
            'compare'   => 'LIKE'
        ),
    )
));

我有这个循环,只显示特定字段的信息;

while( $posts->have_posts() ){ 
        $posts->the_post();
        the_field('relBrand', get_field('basicBrandName'));  
    }

我需要计算the_field('relBrand',get_field('basicBrandName'));

例如:品牌A(1),品牌B(6),品牌D(2);

有人知道如何更改wp_query吗?

1 个答案:

答案 0 :(得分:0)

您可以在顶部定义数组,然后更新计数 $ brandCounters = array();

循环内变化
the_field('relBrand',get_field('basicBrandName')); 到

$brand = get_field('relBrand', get_field('basicBrandName'));
echo $brand;
if(!empty($brandCounters[$brand])) {
    $brandCounters[$brand] = $brandCounters[$brand]++;
}else{
    $brandCounters[$brand] = 1;
}

最好将此代码移至函数;