【发布时间】:2018-07-19 08:40:32
【问题描述】:
是否可以统计相同post_id的相同meta_keys的数量。
我有一个 post_id 为 44 的页面,每次用户在此页面上提交内容时,都会使用元键“post_rating_0”添加一个新的数据库规则。
这个页面现在有超过 30 条规则,我想数一数。 对于其他页面也是如此。
这可能吗?
到目前为止的代码:
global $post;
$query_args = array(
'post_type' => 'page',
'post_status' => 'publish',
'posts_per_page' => -1,
'meta_key' => 'post_rating_0'
// 'fields' => 'SUM(amount_to_paid)',
);
$sum = 0;
$query = new WP_Query($query_args);
if ( $query->have_posts() ) {
while( $query->have_posts() ) {
$query->the_post();
// do the processing for each post
$sum = $sum + intval(get_post_meta(get_the_id(),'post_rating_0', true ));
}
}
echo $sum ;
这是我到目前为止所得到的......但这所做的是呼应“2”的值,这是非常合乎逻辑的。它搜索带有元键“post_rating_0”的帖子,对它们进行计数,即 2 个帖子。
我要做的是计算一页中 meta_keys "post_rating_0" 的数量。
【问题讨论】:
-
请告诉我们“post_rating_0”出现的代码
-
我用目前得到的代码编辑了我的 aswer,但这还不包括特定页面的 meta_keys
-
所以您想知道每个
post_id的所有post_rating_0元数据的数量吗?像数组一样? -
您或许应该使用自定义查询,这样您就可以直接在查询中进行计数,而不必在之后遍历所有记录。您只需通过在 WHERE 子句中指定该页面的帖子 ID 将其限制在您感兴趣的特定页面。
-
如果你想要 number 个条目,那你为什么要总结 values?
标签: php wordpress foreach count meta