这应该很简单,但我无法找到正确语法的一个很好的例子来做到这一点。
我想按 meta_queries 过滤我的帖子,但按指定的 meta_key 对它们进行排序。
当我按原样运行代码时,它会导致无限循环。我只包含了问题代码,其他代码是您运行 query_post 的基本循环代码。
此外,所有 PHP 变量都是正确的,不是问题。
$args2 = array(
'meta_key' => '_count-views_all',
//'meta_value' => $id,
'orderby' => 'meta_value_num',
'order' => $sortOrder,
'posts_per_page' => 9,
'paged' => $paged,
'meta_query' => array(
'relation' => 'OR',
array(
'key' => 'contributorid1',
'value' => $id,
'compare' => '='
),
array(
'key' => 'contributorid2',
'value' => $id,
'compare' => '='
)
)
);
$posts = query_posts($args2);
}
这是另一个完全没有交叉引用问题的查询。两者在同一页面上运行,但嵌套在 if else 语句中
$args1 = array(
//'meta_key' => 'contributorid1',
//'meta_value' => $id,
'order' => $sortOrder,
'orderby' => 'title',
'posts_per_page' => 9,
'paged' => $paged,
'meta_query' => array(
'relation' => 'OR',
array(
'key' => 'contributorid1',
'value' => $id,
'compare' => '='
),
array(
'key' => 'contributorid2',
'value' => $id,
'compare' => '='
)
)
);
$posts = query_posts($args1);