Découvrez quel modérateur a approuvé le commentaire?


11

Existe-t-il un moyen de savoir quels modérateurs ont approuvé un commentaire, puis d'afficher ces informations sur le front-end?

par exemple

John dit: "Ceci est un excellent article" - Approuvé par Admin1


1
Ce type de données n'est pas enregistré nativement. Vous devrez donc commencer par capturer et stocker ces informations en premier.
— Rarst

soupir, je pensais si bien. J'ai vraiment besoin de me trouver un développeur :( Merci pour l'aide Rarst!
— James

1
@Rarst parlerions-nous d'accrocher quelque chose comme: add_action('comment_unapproved_to_approved', 'comment_approved');
— MartinJJ

@Martin aucune idée, n'avait pas regardé le code. Il existe plusieurs façons de traiter les commentaires (admin, e-mails de notification, XML-RPC) et je ne sais pas à quel point tout cela peut être accroché.
— 2011

Réponses:


8

Pour enregistrer le modérateur qui approuve le commentaire:

function wpse_comment_moderator_log( $comment ) {
    global $current_user;
    get_currentuserinfo();

    update_comment_meta( $comment->comment_ID, 'approved_by', $current_user->user_login );
}
add_action( 'comment_unapproved_to_approved', 'wpse_comment_moderator_log' );

Pour l'afficher après le texte du commentaire:

function wpse_display_moderator( $comment_text, $comment ) {
    $approved_by = get_comment_meta( $comment->comment_ID, 'approved_by', true );
    if ( $approved_by ) {
        $comment_text .= " - Approved by $approved_by";
    }
    return $comment_text;
}
add_filter( 'comment_text', 'wpse_display_moderator', 99, 2 );

2
+1 @Hameedullah, je construisais simplement la fonction d'affichage pour mon effort .. réconfortant de savoir pour un apprenant comme moi que ma fonction d'enregistrement est presque exacte à la vôtre , donc je suis sur la bonne voie ....
— MartinJJ

2
Heureux que nous soyons tous deux sur la bonne voie, car je suis moi-même encore un apprenant.
— Hameedullah Khan
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.