WordPress: Nutzer über die Zeit der Kommentarschließung informieren

Um um vermeiden, dass Spammer die Kommentare älterer Beiträge mit sinnlosen Kommentaren zu müllen, bietet WordPress die Möglichkeit, die Kommentarfunktion eines Beitrages nach einer bestimmten Zeit zu sperren.

Kommentare schließen

Für die Benutzer könnte es aber überraschend sein, wenn die Kommentarmöglichkeit plötzlich verschwunden ist. Es wäre vielleicht eine gute Idee, sie über diesen Termin zu informieren.

add_action( 'comment_form_top', 'topic_closes_in' );
 
function topic_closes_in() {
    global $post;
    if ($post->comment_status == 'open') {
        $close_comments_days_old = get_option( 'close_comments_days_old' );
        $expires = strtotime( "{$post->post_date_gmt} GMT" ) +  $close_comments_days_old * DAY_IN_SECONDS;
        printf( __( '(This topic will automatically close in %s. )', 'domain' ),  human_time_diff( $expires ));
    }
}

Der Code sollte einigermaßen selbsterklärend sein, allerdings enthält er eine Funktion, die vielleicht nicht jeder WordPress-Entwickler kennt: human_time_diff(). Die Funktion ist in der Datei .../wp-includes/formatting.php versteckt. Ihre eigentliche Aufgabe ist es, die Datumsangabe von Beiträgen etwas „menschlicher“ zu gestalten. Da es ihr aber egal ist, ob das Datum in der Vergangenheit oder in der Zukunft liegt, können wie sie für unsere Zwecke nutzen.

Kommentare_geschlossen

Ein Gedanke zu „WordPress: Nutzer über die Zeit der Kommentarschließung informieren“

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.