我正在写一个主题,该主题支持具有多个作者的帖子。我将合著者ID保留在发布中继中。问题在于,在作者存档页面上,我不仅需要显示作者的帖子,还需要显示他是共同作者的帖子,并且它们必须处于同一循环中。 所以这是我的问题:是否有一种很好的方法可以用自定义查询扩展主查询(同时仍保留分页等)。
rank2
答案 0 :(得分:2)
您可以结合使用meta_query:
'meta_query' => array(
'relation' => 'OR',
array(
'key' => 'author',
'value' => $author_id,
'compare' => 'LIKE',
),
array(
'key' => 'co_authors',
'value' => $co_author_id,
'compare' => 'LIKE',
)
)
答案 1 :(得分:1)
add_action('pre_get_posts', function ($query) {
if (is_admin() || !$query->is_main_query()) return;
if ($query->is_archive() && $query->is_author()) {
$author_id = get_query_var('author');
// extend the main query with these post ids
$cauthored_arg = array(
'post_type' => 'post',
'post_status' => 'publish',
'posts_per_page' => '-1',
'orderby '=>'ID'
'meta_query' => array(
array(
'key' => 'co_authors',
'value' => $author_id,
'compare' => 'LIKE',
),
)
);
$coauthored_posts = new WP_Query( $cauthored_arg );
}
});