Scopri quale commento approvato dal moderatore?


11

C'è un modo per scoprire quali moderatori hanno approvato un commento e quindi visualizzare tali informazioni sul front-end?

per esempio

John dice: "Questo è un ottimo articolo" - Approvato da Admin1


1
Questo tipo di dati non viene salvato in modo nativo. Quindi dovrai iniziare a catturare e archiviare tali informazioni prima.
Rarst

sospiro ho pensato così bene. Ho davvero bisogno di procurarmi uno sviluppatore :( Grazie per l'aiuto Rarst!
James,

1
@Prima parliamo agganciandoci a qualcosa del tipo: add_action('comment_unapproved_to_approved', 'comment_approved');
MartinJJ,

@Martin non ne avevo idea, non avevo visto il codice. Esistono diversi modi in cui vengono trattati i commenti (admin, e-mail di notifica, XML-RPC) e non sono sicuro di quanto sia agganciabile tutto ciò.
Rarst

Risposte:


8

Per registrare il moderatore che approva il commento:

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' );

Per visualizzarlo dopo il testo del commento:

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, stavo solo costruendo la funzione di visualizzazione per il mio sforzo ... confortante sapere per uno studente come me che la mia funzione di registrazione è quasi esatta alla tua, quindi ero sulla strada giusta ....
MartinJJ

2
Sono contento che entrambi siamo sulla buona strada, dato che io stesso sono ancora uno studente.
Hameedullah Khan,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.