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

问题描述 投票:0回答:1

我有一个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?

php sql wordpress
1个回答
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;
}

更好地将此代码移动到函数中;

© www.soinside.com 2019 - 2024. All rights reserved.