En av våra läsare frågade om det var möjligt att markera användarens roll bredvid varje comment i WordPress?
Displaying user role label ger vikt åt kommentarer som görs av registrerade användare på din website, särskilt författare, editors och admins.
I den här artikeln visar vi dig hur du enkelt kan add to en etikett för användarens roll bredvid kommentarer i WordPress.
Varför visa etiketten för användarens roll bredvid namnet på författaren till kommentaren i WordPress?
Om du allow user registration på din website eller run a multi-author WordPress website, så kan user labels presentera användare för varandra baserat på deras roller.
Till exempel kommer användare med rollen Editor att visa en märke bredvid sitt namn i kommentarer så att andra användare vet att kommentaren har gjorts av en editor.
Det bygger upp användarnas förtroende och ökar deras engagement när de kommenterar din website.
Många teman i WordPress lyfter bara fram kommentarer som gjorts av författaren till posten. De visar inte etiketter för andra användarroller även om andra kommentarer görs av registrerade användare eller administratörer av webbplatsen.
Med detta sagt, låt oss ta en titt på hur du enkelt kan add to en etikett för användarens roll bredvid kommentarer i WordPress.
Lägga till etikett för användarens roll bredvid namnet på kommentarsförfattaren i WordPress
Denna tutorial kräver att du addar kod till dina WordPress theme-filer. Om du inte har gjort det tidigare, vänligen ta en titt på vår guide om hur du copy and paste code snippets i WordPress.
Det första du behöver göra är att lägga till följande kod i ditt temas functions.php-fil, i ett site-specifikt plugin eller i ett code snippets-plugin.
if ( ! class_exists( 'WPB_Comment_Author_Role_Label' ) ) :
class WPB_Comment_Author_Role_Label {
public function __construct() {
add_filter( 'get_comment_author', array( $this, 'wpb_get_comment_author_role' ), 10, 3 );
add_filter( 'get_comment_author_link', array( $this, 'wpb_comment_author_role' ) );
}
// Get comment author role
function wpb_get_comment_author_role($author, $comment_id, $comment) {
$authoremail = get_comment_author_email( $comment);
// Check if user is registered
if (email_exists($authoremail)) {
$commet_user_role = get_user_by( 'email', $authoremail );
$comment_user_role = $commet_user_role->roles[0];
// HTML output to add next to comment author name
$this->comment_user_role = ' <span class="comment-author-label comment-author-label-'.$comment_user_role.'">' . ucfirst($comment_user_role) . '</span>';
} else {
$this->comment_user_role = '';
}
return $author;
}
// Display comment author
function wpb_comment_author_role($author) {
return $author .= $this->comment_user_role;
}
}
new WPB_Comment_Author_Role_Label;
endif;
Denna funktionskod ovan åtgärds-hookar WordPress-filter som används för att visa namnet på författaren till kommentaren för att inkludera etiketten för användarens roll.
Vi rekommenderar att du lägger till den här koden med hjälp av WPCode, det bästa code snippets-pluginet för WordPress. Det är det säkraste och enklaste sättet att add to kod utan att editera ditt temas functions.php-fil.
För att komma igång måste du installera och aktivera det gratis pluginet WPCode. Detaljerade instruktioner finns i denna tutorial om hur du installerar ett plugin för WordPress.
När pluginet är aktiverat navigerar du till Code Snippets ” + Add Snippet från WordPress dashboard. Därifrån klickar du på knappen ”Use Snippet” under alternativet ”Add Your Custom Code (New Snippet)”.
Därefter add to a title for your code snippet at the top of the page. Det kan vara vad som helst för att hjälpa dig att komma ihåg vad koden är till för.
Klistra sedan in koden ovan i ”Code Preview” boxen och välj ”PHP Snippet” som code type från dropdown-listan till höger.
Därefter flyttar du bara omkopplaren från ”Activate” till ”Inaktiverad” och klickar på knappen ”Save Snippet”.
You can now visit any post with comments to see it in action.
Kommentarer från registrerade användare kommer att visa deras användarroll bredvid namnet på författaren till kommentaren. Kommentarer som görs av icke-registrerade användare visar endast namnet på författaren till kommentaren.
Nu när vi har add to användarens roll är det dags att styla den och få den att se ren ut.
I vår kod har vi add to en CSS-klass för varje användarroll, så vi kan använda dessa CSS-klasser för att customize varje användarmärke på olika sätt (dvs. använda olika färger etc.).
Du kan använda följande exempel på CSS som utgångspunkt:
.comment-author-label {
padding: 5px;
font-size: 14px;
border-radius: 3px;
}
.comment-author-label-editor {
background-color:#efefef;
}
.comment-author-label-author {
background-color:#faeeee;
}
.comment-author-label-contributor {
background-color:#f0faee;
}
.comment-author-label-subscriber {
background-color:#eef5fa;
}
.comment-author-label-administrator {
background-color:#fde9ff;
}
Känn dig gratis att justera CSS efter vad du gillar. Så här såg det ut på vår demo website:
För mer details, se vår guide om hur du enkelt lägger till custom CSS på din WordPress site.
Vi hoppas att den här artikeln hjälpte dig att lära dig hur du add to etiketter för användarens roll bredvid kommentarer i WordPress. Du kanske också vill se vår guide om hur man lazy loadar Gravatars i WordPress comments och våra expertval av de bästa tilläggen för att förbättra WordPress comments.
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.
Syed Balkhi says
Hey WPBeginner readers,
Did you know you can win exciting prizes by commenting on WPBeginner?
Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
You can get more details about the contest from here.
Start sharing your thoughts below to stand a chance to win!
Jiří Vaněk says
I would like to ask if the label will also display for roles that are not native to WordPress. For example, if I use AIO SEO to add an SEO manager role, will these roles be displayed even though they are not in the default WordPress settings?
WPBeginner Support says
As long as they are properly using the role system it should show your custom role.
Administratör
Jack says
What if a user has multiple roles? Let say, I have a user with ”verified” and ”subscriber” roles. I need to put verified badge next to the comment author with ”verified” role. How can I do this?
WPBeginner Support says
By default WordPress only allows a user to have 1 role at a time, if you’re using a plugin to allow for multiple roles then it would depend on the specific plugin that you are using
Administratör
John says
How to integrate it in Profile Page or lets say, i want to add a code in about Me widget.
Matt says
Hey,
Great tutorial.
Is there anyway to customize the text within the badge?
Instead of the user role, displaying something like ”Post Author”? I feel like displaying ’Administrator’ for some blogs is a bit of a buzz kill and too serious.
Kelly says
Instead of saying ”Administrator” or whatever their role beside their name, if I wanted to show an icon based on user role, how could I do that? I’ve tried playing with your code but cannot figure out how to display a different icon based on user role.
Eddie says
That would be great. I’m looking for this so I can show an icon only for contributors
Mahmudul Hasan says
where put the css code..?
WPBeginner Support says
Hi Mahmudul Hasan,
Please see our guide on how to add custom CSS in WordPress.
Administratör
javad says
Hi this code is wrong and when I put it on functions.php my website got 500 error!!!
WPBeginner Support says
Hi Javad,
This code is working fine on our test site. 500 internal server error can be caused by many other things.
Administratör