WordPress: IP-Adressen von Kommentaren nach 7 Tagen mit der WP-CLI automatisiert löschen

Wenn du dir Datenschutzerklärungen z.B. mit diesem Generator erstellst und du die Option für die Kommentare ausgewählt hast, dann steht da drin, dass IP-Adressen von Kommentaren nach 7 Tagen gelöscht werden.

Es gibt einige Ansätze, die WordPress vollständig daran hintern IP-Adressen zu speichern. Aber vielleicht kommt irgendwann die Situation, dass man die IP-Adresse benötigt, da z.B. ein Missbrauch vorliegt. Deswegen will ich nicht ganz so radikal vorgehen, sondern die IP-Adresse 7 Tage speichern.

Um das automatische Aufräumen musst du dich aber selbst kümmern. Mit einem Cronjob und der WP-CLI lässt sich das aber gut handhaben. Die WP-CLI harmoniert sehr gut mit Uberspace.

Da die Datenbank verändert wird, solltest du dir vorher ein Backup anlegen. Mit dem folgenden Befehl kannst du erstmal eine Trockenübung machen, ob alles passt (Im WordPress-Ordner ausführen):

wp db query "SELECT * FROM $(wp db prefix)comments WHERE TIMESTAMPDIFF(DAY, comment_date, CURRENT_TIMESTAMP) >= 7;"

Damit bekommst du alle Kommentare aufgelistet, die älter als 7 Tage sind.

Jetzt aber zu dem Befehl, der die IP-Adresse von allen Kommentaren löscht, die älter als 7 Tage sind.

wp db query "UPDATE $(wp db prefix)comments SET comment_author_IP='' WHERE comment_author_IP != '' AND TIMESTAMPDIFF(DAY, comment_date, CURRENT_TIMESTAMP) >= 7;"

Für die Automatisierung wird ein Cronjob erstellt, der diesen Befehl einmal am Tag ausführt. Mit crontab -e die Datei für die Cronjobs öffnen und folgende Zeile einfügen:

@daily cd /home/<DEINUSERNAME>/path/wordpress && wp db query "UPDATE $(wp db prefix)comments SET comment_author_IP='' WHERE comment_author_IP != '' AND TIMESTAMPDIFF(DAY, comment_date, CURRENT_TIMESTAMP) >= 7;" >/dev/null 2>&1

Auf Uberspace 7 ist die WP-CLI schon installiert und es muss nicht der vollständige Pfad angegeben werden. Wenn der Cronjob die wp nicht findet, muss der vollständige Pfad angegeben werden. Zum Beispiel: /home/<DeinBenutzername>/bin

Mit nur einer Zeile und einem Cronjob hat du dein WordPress wieder ein Stück weiter automatisiert und dein WordPress ist datenschutzfreundlicher unterwegs.

Vermutlich verwendest du einen veralteten Browser. Da diese Website auf moderne Technik setzt, benötigst du einen aktuellen Browser, um diese Website richtig darzustellen.