今天,有用户在我们的WordPress中文社区问答区提问说,WordPress如何获取指定用户角色的文章,还问到WordPress数据库里是怎么把user和role关联起来的?他没找到对应的关系表,其实我们换个思路这个需求实现起来是很简单的,思路就是先使用get_users()函数获取到指定角色用户的信息,然后提取用户的ID组成数组储存到一个变量,然后再使用wp_query()类查询中的author_in参数来查询文章就行了,演示代码如下,如果有需要的朋友可以拿走尝试一下。
<?php
$authors = get_users(array('role'=>'author'));//获取到指定用户角色的所有用户的对象;
$author_id_arr = array();//赋值一个空数组变量用来储存指定用户角色用户的ID
if($authors){
foreach($authors as $author){
$author_id_arr[]=$author->ID;
}
}//循环指定用户角色的所有用户的对象,获取到用户ID储存到上面的空数组变量$author_id_arr
$args = array(
'author__in'=>$author_id_arr,
'post_type'=>'post',
);
// 自定义查询
$the_query = new WP_Query( $args );
// 判断查询的结果,检查是否有文章
if ( $the_query->have_posts() ) :
// 通过查询的结果,开始主循环
while ( $the_query->have_posts() ) :
$the_query->the_post(); //获取到特定的文章
/** 要输出的内容,如标题、日期等比如<?php the_title();?> */
endwhile;
endif;
// 重置请求数据
wp_reset_postdata();
?>
WordPress日记主要承接WordPress主题定制开发、PSD转WordPress、WordPress仿站以及以WordPress为管理后端的小程序、APP,我们一直秉持“做一个项目,交一个朋友”的理念,希望您是我们下一个朋友。如果您有WordPress主题开发需求,可随时联系QQ:919985494 微信:18539976310