我正在尝试根据Wordpress页面上最近活跃的用户生成一个作者列表,包括个人资料链接中的一个类。我到目前为止的是
<div id="personae">
<ul>
<?php
$authors = array();
$count = 0;
$args=array(
'post_type' => 'post',
'post_status' => 'publish',
'posts_per_page' => -1,
'caller_get_posts'=> 1
);
$my_query = null;
$my_query = new WP_Query($args);
if( $my_query->have_posts() ) {
echo '';
while ($my_query->have_posts() && $count < 3) : $my_query->the_post();
$author_id=$my_query->post->post_author;
$user = new WP_User( $author_id );
if ( !empty( $user->roles ) && is_array( $user->roles ) && in_array('contributor',$user->roles) || in_array('',$user->roles)) {
if (!in_array($author_id,$authors)) {
echo '<li>';
the_author_meta('title');
echo ' <a href="#" class="';
the_author_meta('personaeclass');
echo '">';
the_author_nickname();
echo '</a>';
echo '</li>';
$count++;
$authors[]=$author_id;
}
}
endwhile;
}
wp_reset_query();
?>
</ul>
</div>
它产生了近3位作者的近乎完美的代码。
<div id="personae">
<ul>
<li>Editor <a href="#" class="menu-item-1">Name</a></li>
<li>Photographer <a href="#" class="menu-item-2">Name</a></li>
<li>Journalist <a href="#" class="menu-item-3">Name</a></li>
</ul>
</div>
我差不多 我只需要作者的链接是href =“author profile url”而不是#。我尝试过使用the_author_posts_link('');哪个有效,但是在我也需要申请的链接中没有办法让class =“”。
有任何建议如何解决这个问题?谢谢!
答案 0 :(得分:0)
函数get_the_author_link()
应该有效。所以
echo ' <a href="#" class="';
会变成
echo ' <a href="'. get_the_author_link() . '" class="';
编辑:我的道歉上面会得到作者网站的网址:
get_author_posts_url($author_id)
答案 1 :(得分:0)
试试这个,
<div id="personae">
<ul>
<li>Editor <a href="<?php echo get_author_posts_url( $author_id, get_the_author_meta( 'user_nicename', $author_id ) ); ?>" class="menu-item-1"><?php echo get_the_author_meta( 'display_name', $author_id ); ?></a></li>
</ul>
</div>
参考