1

administrator如果这个人有这个角色,有没有办法在用户名旁边显示一个额外的文本?

我只想显示这个角色的额外文本,我可以使用什么钩子?

4

1 回答 1

0

是的,您可以使用 filter the_author,如下所示:

add_filter( 'the_author', 'author_admin_so_14367149' );

function author_admin_so_14367149( $display_name ) 
{
    // Block the filter in the dashboard (admin area)
    if( is_admin() )
        return $display_name;

    global $authordata;

    // User has administrator role, add string to display name
    if( in_array( 'administrator', $authordata->roles ) )
        $display_name = $display_name . ' (admin)';

    return $display_name;
}

对于评论部分,还有另一个过滤器,检查是不同的:

add_filter( 'get_comment_author', 'comment_author_admin_so_14367149' );

function comment_author_admin_so_14367149( $author ) 
{
    // Block the filter in the dashboard (admin area)
    if( is_admin() )
        return $author;

    $user = get_user_by( 'login', $author );

    // User has administrator role, add string to display name
    if( in_array( 'administrator', $user->roles ) )
        $author = $author . ' (admin)';

    return $author;
}
于 2013-01-16T22:44:59.010 回答