Wie entferne ich genehmigte Spam-Kommentare nach Datum?

Sie müssen 1000 Spam-Kommentare in einem Datenbereich entfernen, ohne legale Kommentare zu entfernen

Solutions Collecting From Web of "Wie entferne ich genehmigte Spam-Kommentare nach Datum?"

Leider bietet WordPress keine functionen zur Auswahl von Kommentaren nach Datumsbereich, soweit ich weiß. Und obwohl Sie wp_delete_comment in einer Schleife wp_delete_comment könnten, würde es unnötig lange dauern.

Wie das Beziehungsdiagramm der WordPress-database zeigt , können Kommentare nur in der Tabelle wp_comments und der Tabelle wp_commentmeta .

Verwenden Sie den MySQL-Befehlszeilenclient oder phpMyAdmin, um Abfragen direkt auszuführen. Wenn du:

 SELECT * FROM `wp_comments` LIMIT 1 

… sehen Sie die Struktur der Kommentardaten. comment_date und comment_date_gmt sind die Felder, mit denen Sie BETWEEN spielen werden. comment_date ist das Datum der Versetzung des Kommentars um die Zeitzoneneinstellung, die Sie unter Einstellungen / Allgemein festgelegt haben. comment_date_gmt ist die UTC + 0 Zeit, die universelle Wahrheit.

 SELECT * FROM `wp_comments` WHERE `comment_date` BETWEEN '2010-01-15 00:00:00' AND '2012-01-15 00:00:00'; 

Kein Erklärungsbedarf. Sobald Sie Ihre database gesichert haben (ich meine es wirklich, sichern Sie es, bitte können die Dinge schief gehen), sind Sie frei zu:

 DELETE FROM `wp_comments` WHERE `comment_date` BETWEEN '2010-01-15 00:00:00' AND '2012-01-15 00:00:00'; 

Jetzt, wie uns die databasestruktur zeigt, werden wir in der Tabelle wp_commentmeta Metadaten wp_commentmeta .

 SELECT * FROM `wp_commentmeta` WHERE `comment_ID` NOT IN (SELECT `comment_ID` FROM `wp_comments`); 

Eine Unterabfrage wird sich darum kümmern. Sobald Sie sich wohl fühlen, ersetzen Sie SELECT * für DELETE FROM .

Um solche Bereinigungen zu planen, wie “alle Kommentare löschen, die älter als ein Jahr sind”, würden Sie diese Abfragen mit verschiedenen wp_schedule_event von wp_schedule_event und der wpdb class zusammenführen, um Abfragen wpdb . Um das Datum zu erstellen, würden Sie die Datumsfunktionen von WordPress verwenden.