我猜你不会$authorid
无论在哪里,它都会被忽略并返回所有帖子,无论作者是谁。如果你enable debugging, 你会得到警告的$authorid
未定义。始终在启用调试的情况下进行开发是一种很好的做法,因此您不必猜测错误是什么。
另外,不要使用query_posts
对于其他查询,或者实际上!它会覆盖原始的主查询,并可能在模板中的其他地方产生不可预测的结果。使用WP_Query
而是:
$args = array(
\'post_type\' => \'my_custom_post_type\' ,
\'author\' => get_queried_object_id(), // this will be the author ID on the author page
\'showposts\' => 10
);
$custom_posts = new WP_Query( $args );
if ( $custom_posts->have_posts() ):
while ( $custom_posts->have_posts() ) : $custom_posts->the_post();
// your markup
endwhile;
else:
// nothing found
endif;
注意:对于自定义查询,我们将帖子分配给
$custom_posts
(或任何您想使用的唯一变量名),然后在循环中引用该变量。