web-dev-qa-db-fra.com

Mettre en surbrillance le commentaire des utilisateurs actuels

Je ne sais pas si c'est possible, j'ai fouillé mais je me suis trompé. Fondamentalement, j'ai besoin que l'utilisateur actuel qui commente voit ses commentaires légèrement différents des autres.

Je le fais pour les administrateurs/modérateurs, mais le fait est que tous les utilisateurs voient les commentaires mis en surbrillance par admin/mod. Ici, je veux simplement que tous les utilisateurs voient ses commentaires mis en surbrillance.

1
Tommy

suppose que votre thème utilise comment_class();

exemple (à ajouter à functions.php de votre thème):

add_filter( 'comment_class', 'comment_class_logged_in_user' );

function comment_class_logged_in_user( $classes ) {
    global $comment;
    if ( $comment->user_id > 0 && is_user_logged_in() ) {
        global $current_user; get_currentuserinfo();
        $logged_in_user = $current_user->ID;
        if( $comment->user_id == $logged_in_user ) $classes[] = 'comment-author-logged-in';
    }
return $classes;
}

nécessite le formatage de la classe css:

.comment-author-logged-in { }

J'ai récemment posté une version du plugin sur mon site .

2
Michael

Premièrement, si vous regardez les classes de commentaires, vous remarquerez une classe appelée byuser. Cette classe est l’une des classes par défaut ajoutées par comment_class . C'est tout ce dont vous avez besoin. Vous pouvez styler cela avec CSS comme bon vous semble.

Si votre thème n'utilise pas comment_class comme il se doit, alors ...

Recherchez dans comments.php de votre thème une fonction nommée wp_list_comments. Dans Twenty Twelve, cela ressemble à ceci : wp_list_comments( array( 'callback' => 'twentytwelve_comment', 'style' => 'ol' ) );.

Cette partie callback est la partie importante ici. S'il y a un rappel dans l'appel de fonction de votre thème, c'est ce que vous devez modifier. S'il n'y a pas de rappel, la valeur par défaut de WordPress sera utilisée, il ne devrait donc y avoir aucun problème. comment_class devrait déjà être utilisé.

Le thème doit avoir une fonction nommée de la même manière que la valeur de ce rappel dans le code ci-dessus. Pour Twelve Twelve, il s'agit de twentytwelve_comment qui est défini dans functions.php . Cela formate et affiche la liste de commentaires réelle. Tout ce que vous devez faire est de dupliquer/éditer cette fonction et d’ajouter la fonction comment_class, juste ici .

0
s_ha_dum