Dowiedz się, który moderator zatwierdził komentarz?

11

Czy jest jakiś sposób, aby dowiedzieć się, którzy moderatorzy zatwierdzili komentarz, a następnie wyświetlić te informacje na interfejsie?

na przykład

John mówi: „To świetny artykuł” - zatwierdzony przez Admin1

James
źródło
1
Tego rodzaju dane nie są zapisywane natywnie. Musisz najpierw zacząć przechwytywać i przechowywać takie informacje.
Rarst
westchnienie , pomyślałem tak dobrze. Naprawdę muszę zdobyć programistę :( Dzięki za pomoc, Rarst!
James
1
@Rarst rozmawialibyśmy o podłączeniu się do czegoś takiego: add_action('comment_unapproved_to_approved', 'comment_approved');
MartinJJ
@Martin nie mam pojęcia, nie spojrzał na kod. Komentarze można przetwarzać na wiele sposobów (administrator, e-maile z powiadomieniami, XML-RPC) i nie jestem pewien, jak bardzo to wszystko jest możliwe.
Rarst

Odpowiedzi:

8

Aby nagrać moderatora, który zatwierdza komentarz:

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

Aby wyświetlić go po tekście komentarza:

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 );
Hameedullah Khan
źródło
2
+1 @Hameedullah, właśnie budowałem funkcję wyświetlania dla mojego wysiłku .. pocieszam się, wiedząc dla takiego ucznia jak ja, że ​​moja funkcja nagrywania jest prawie dokładna do twojej, więc byłem na dobrej drodze ....
MartinJJ
2
Cieszę się, że oboje jesteśmy na dobrej drodze, ponieważ sam jestem uczniem.
Hameedullah Khan