如何显示仅在自定义帖子类型中发布的作者列表?

时间:2015-09-01 12:07:47

标签: php wordpress

我正在尝试显示在自定义帖子类型中发帖的作者列表。到目前为止我所做的是使用wp_list_authors,它只显示管理员帖子,而不考虑自定义帖子。我真正想做的是在我的最新新闻页面上,该新闻页面上有自定义帖子的帖子,“新闻”,只显示在该自定义帖子类型中有帖子的作者。

如果有人能够如何做到这一点,那么我将非常感激:)

谢谢

    <?php
$blogusers = wp_list_authors();
foreach ( $blogusers as $user ) {
    echo "<li><a href='#' data-option-value='.".strtolower($user->user_login)."'><div class='flag'>".get_avatar($user->ID, 'description', true).'</div>' . $user->user_login ."</a></li>\n";    }
?>

1 个答案:

答案 0 :(得分:0)

我认为你不能用这个功能做到这一点,但你可以用直接查询来做,比如

global $wpdb;
$authors=$wpdb->get_results('select `'.$wpdb->prefix.'users`.`ID`, `'.$wpdb->prefix.'users`.`user_login`, `'.$wpdb->prefix.'users`.`display_name` from `'.$wpdb->prefix.'users` inner join `'.$wpdb->prefix.'posts` on `'.$wpdb->prefix.'users`.`ID`=`'.$wpdb->prefix.'posts`.`post_author` where `post_type`=\'news\' group by `'.$wpdb->prefix.'users`.`ID`;');
//you should do a check if $authors is not null and actually got any records returned.
foreach ( $authors as $user ) 
{
    echo "<li><a href='#' data-option-value='".strtolower($user->user_login)."'><div class='flag'>".get_avatar($user->ID, 'description', true).'</div>' . $user->display_name."</a></li>\n";    
}