2012-05-29 81 views
1

我要顯示的存檔和作者網頁外循環筆者作用,我發現這個代碼,並在循環中正常工作 Getting an author's role in Wordpress顯示作者的角色

但是,當我加入這個歸檔和作者頁面給我的警告信息叫做

Warning: array_shift() expects parameter 1 to be array, null given in 

如何解決這個問題?

回答

2

這些示例使用我在我的完整答案Here中給出的函數。在您的functions.php文件:

function get_user_role($id) 
{ 
    $user = new WP_User($id); 
    return array_shift($user->roles); 
} 

在你的檔案頁:

if(have_posts()) : while(have_posts()) : the_post(); 
    $aid = $post->post_author; 
    echo get_the_author_meta('user_nicename', $aid).' | '.get_user_role($aid); 
endwhile;endif; 

至於你的作者模板時,Wordpress Codex on Author Templates有很多有用的信息。你可以這樣做:

<?php 
$curauth = (get_query_var('author_name')) ? get_user_by('slug', get_query_var('author_name')) : get_userdata(get_query_var('author')); 
echo $curauth->user_nicename.' | '.get_user_role($curauth->ID); 
?> 
+0

酷!我測試過不同的模板,我相信它的工作正常。讓我檢查我的模板,並回到你身邊。非常感謝 –

+0

這工作完全正常。非常感謝。 –