我正在使用ACF作为共同撰写的帖子。我想显示所有帖子,这是一位也被指定为共同作者的作者。
此外,我正在使用pre_get_posts过滤器进行此操作。我可以获取所有共同撰写帖子的帖子ID。
因此,我的查询包含了我需要的所有ID。但是,当我想通过简单的while查询显示它们时,wordpress会跳过该帖子,该作者不是主要的Author。
有没有解决方法?
谢谢。
if ($query->is_author() && $query->is_main_query()):
$author = (get_query_var('author_name')) ? get_user_by('slug', get_query_var('author_name')) : get_userdata(get_query_var('author'));
$authorPostIDs = self::getAuthorsPostIDs($author->ID);
$coAuthorPostIDs = self::getCoAuthorsPostsIDs($author->ID);
$postIDs = array_unique(
array_merge($coAuthorPostIDs, $authorPostIDs), SORT_REGULAR
);
$query->set('post__in', $postIDs);
endif;
模板:
while (have_posts()) :
the_post();
Theme::setTemplateVariables(['show_excerpt' => FALSE]);
get_template_part('templates/article', get_post_type() !== 'post' ? get_post_type() : get_post_format());
endwhile;