Lesefortschritt:

Spam-Kommentare automatisch löschen

8. Februar 2026 | functions.php, Word­Press

Trick # 538 | Dieser Beitrag beinhaltet 388 Wörter. – Geschätzte Lesezeit: ca. 2 Minuten.

Spam-Kommentare können in Word­Press schnell zur Plage werden. Sie verstopfen die Kommentarsektion und belasten die Datenbank. Manuelles Löschen ist zeitaufwändig, vor allem, wenn sich viele Spam-Kommentare ansammeln. Glücklicherweise kann dieser Prozess durch ein kleines PHP-Skript automatisiert werden.
Das folgende Script löscht Kommentare, welche als Spam markiert sind nach zehn Tagen automatisch.

Fügen Sie das Script in die Datei functions.php Ihrer Word­Press-Installation ein. Sie finden das File im Backend unter Design/Theme-Datei-Editor:

// Funktion, um Spam-Kommentare zu löschen
function delete_old_spam_comments() {
    global $wpdb;

    // Zeitstempel für Kommentare, die älter als 10 Tage sind
    $ten_days_ago = strtotime('-10 days');

    // SQL-Abfrage zum Löschen von Spam-Kommentaren
    $wpdb->query(
        $wpdb->prepare(
            "
            DELETE FROM $wpdb->comments
            WHERE comment_approved = 'spam'
            AND comment_date_gmt < %s
            ",
            date('Y-m-d H:i:s', $ten_days_ago)
        )
    );
}

// Aktion alle 24 Stunden ausführen
if (!wp_next_scheduled('delete_old_spam_comments_event')) {
    wp_schedule_event(time(), 'daily', 'delete_old_spam_comments_event');
}

// Mit dem Cron-Ereignis verbinden
add_action('delete_old_spam_comments_event', 'delete_old_spam_comments');

// Optional: Funktion zum Deaktivieren des Cron-Jobs beim Deaktivieren des Themes oder Plugins
function disable_delete_old_spam_comments_event() {
    $timestamp = wp_next_scheduled('delete_old_spam_comments_event');
    if ($timestamp) {
        wp_unschedule_event($timestamp, 'delete_old_spam_comments_event');
    }
}
register_deactivation_hook(__FILE__, 'disable_delete_old_spam_comments_event');
Das Skript wird einmal täglich durch den WP-Cron ausgeführt. Es sucht nach Spam-Kommentaren, die älter als zehn Tage sind und löscht diese.

Auf Zeile 6 können Sie nach Wunsch auch eine andere Frist eintragen.

Werbung

Keine Inhalte gefunden.

Werbung

 

Pin It on Pinterest

Share This
Überblick über den Datenschutz

Diese Website verwendet Cookies, damit wir Ihnen die bestmögliche Benutzererfahrung bieten können. Cookie-Informationen werden in Ihrem Browser gespeichert und dienen dazu, Sie wiederzuerkennen, wenn Sie auf unsere Website zurückkehren, und unserem Team zu helfen, zu verstehen, welche Bereiche der Website Sie am interessantesten und nützlichsten finden.