PHP Code entfernt Kommentarfunktion in WordPress

Ich habe mich entschlossen, die Kommentare in meinem Blog abzuschalten. Ursprung war wie immer der Frühjahrsputz in dem Blog.


Hierzu habe ich eine Funktion genutzt, welche neben den Kommentaren auch die Trackbacks und Pings entfernt.
Ein sehr großer Vorteil ist, dass ich die alten Kommentare hierdurch noch behalte.

Früher übernahm das Plugin My Custom Functions von Space X-Chimp unter WordPress, um den PHP-Code einfach in meine laufende Umgebung einzufügen. WordPress hat es aufgrund von Richtlinienverstößen aus dem WordPress-Plugin Directory entfernt.
Ersetzt habe ich es mit dem Plugin mit dem sperrigen Namen WPCode – Insert Headers and Footers + Custom Code Snippets – WordPress Code Manager von WP Code. Es bietet eine relativ einfach zu handhabende Oberfläche, um seine eigenen PHP-Code-Schnipsel zu definieren und überprüft diese auf Fehler.

PHP Code für die Entfernung von Kommentaren

Die letzte Zeile wurde von mir mit einem // kommentiert, da ich die alten Kommentare noch erhalten wollte.

// Keine Kommentare

add_action('admin_init', function () {
    // Umleitung aller Benutzer, die versuchen, auf die Kommentarseite zuzugreifen
    global $pagenow;
    
    if ($pagenow === 'edit-comments.php') {
        wp_safe_redirect(admin_url());
        exit;
    }

    // Kommentar-Metabox aus dem Dashboard entfernen
    remove_meta_box('dashboard_recent_comments', 'dashboard', 'normal');

    // Unterstützung für Kommentare und Trackbacks in Posts deaktivieren
    foreach (get_post_types() as $post_type) {
        if (post_type_supports($post_type, 'comments')) {
            remove_post_type_support($post_type, 'comments');
            remove_post_type_support($post_type, 'trackbacks');
        }
    }
});

// Kommentare auf dem Frontend schließen
add_filter('comments_open', '__return_false', 20, 2);
add_filter('pings_open', '__return_false', 20, 2);

// Vorhandene Kommentare ausblenden
//add_filter('comments_array', '__return_empty_array', 10, 2);

Weiter Posts folgen 😉