---
title: "WordPress-Kommentare datenschutzfreundlich einrichten: IP-Adressen kürzen und Daten sparen"
date: 2026-09-30T22:00:02+02:00
modified: 2026-11-10T16:01:35+01:00
category: wordpress
type: how_to
author: Marcel Schönfelder
canonical: https://s-edv.com/anleitungen/wordpress-kommentare-datenschutz-ip-adresse-kuerzen
keywords:
  - WordPress
  - Kommentare
  - Datenschutz
  - DSGVO
  - IP-Adresse
reading_time: 9
---

# WordPress-Kommentare datenschutzfreundlich einrichten: IP-Adressen kürzen und Daten sparen

Jeder Kommentar in WordPress hinterlässt mehr Daten, als auf der Seite zu sehen ist: Neben Name, E-Mail-Adresse und Text speichert WordPress die vollständige IP-Adresse und die Browser-Kennung (User-Agent) des Absenders, standardmäßig ohne Ablaufdatum. Dazu kommen Avatare, die WordPress von einem externen Dienst lädt, und Cookies für die Formularfelder. Für Unternehmen im DACH-Raum stellt sich damit die Frage nach Datenminimierung und Speicherdauer nach DSGVO. Diese Anleitung zeigt, welche Daten tatsächlich anfallen, wie Sie IP-Adresse und User-Agent mit wenigen Zeilen Code kürzen, bestehende Kommentare nachträglich bereinigen und die Diskussionseinstellungen passend setzen. Alle Schritte sind mit WordPress 7.1.2 getestet. Eine Rechtsberatung ersetzt die Anleitung nicht.

**Kurzfassung:** WordPress speichert zu jedem Kommentar die volle IP-Adresse und den User-Agent. Ein Must-Use-Plugin mit den Filtern `pre_comment_user_ip` und `pre_comment_user_agent` kürzt die IP über die WordPress-Funktion `wp_privacy_anonymize_ip()` und verwirft den User-Agent. Alte Kommentare bereinigen Sie einmalig per WP-CLI. Avatare schalten Sie unter **Einstellungen > Diskussion** ab, wenn Sie keine Daten an Gravatar übermitteln möchten. Der Preis: Die Flood-Sperre von WordPress erkennt Absender dann nur noch über die E-Mail-Adresse.

## Voraussetzungen

- [ ] **WordPress:** eine aktuelle Version, getestet mit 7.1.2. Nach dem Update auf 7.1.3 kürzt `wp_privacy_anonymize_ip()` die Adresse `203.0.113.45` weiterhin auf `203.0.113.0`. Die Funktion `wp_privacy_anonymize_ip()` gibt es seit WordPress 4.9.6.
- [ ] **PHP:** mindestens 7.4; WordPress empfiehlt 8.3 oder neuer.
- [ ] **Zugriff:** SFTP, FTP oder SSH auf `wp-content`. Für die Bereinigung alter Kommentare (Schritt 4) SSH mit WP-CLI.
- [ ] **Rolle:** Administrator im Backend.
- [ ] **Backup:** eine aktuelle Sicherung der Datenbank. Schritt 4 verändert bestehende Daten unumkehrbar.
- [ ] **Datenschutzerklärung:** Zugriff auf die Seite, damit Sie die Angaben zur Kommentarfunktion anpassen können.

## Schritt 1: Feststellen, welche Daten WordPress speichert

Bevor Sie etwas ändern, sehen Sie nach, was Ihre Installation tatsächlich erfasst. Mit WP-CLI fragen Sie die letzten Kommentare direkt ab:

```bash
$ wp comment list --fields=comment_ID,comment_author,comment_author_IP,comment_agent --number=5
```

Im Beispiel stehen nach zwei Testkommentaren diese Werte in der Datenbank:

Ausgabe:

```plaintext
comment_ID  comment_author  comment_author_IP  comment_agent
2           Erika Muster    127.0.0.1          Mozilla/5.0 Testbrowser/1
3           Erika Muster    127.0.0.1          Mozilla/5.0 Testbrowser/2
```

Im Livebetrieb steht dort die öffentliche IP-Adresse des Besuchers. Ohne SSH sehen Sie die IP unter **Kommentare** in der Spalte des Autors. Übersicht der Datenpunkte:

| Datum | Wo gespeichert | Standard |
| --- | --- | --- |
| Name, E-Mail, Website | Tabelle `wp_comments` | unbegrenzt |
| IP-Adresse | `comment_author_IP` | vollständig, unbegrenzt |
| Browser-Kennung | `comment_agent` | vollständig, unbegrenzt |
| Formular-Cookies | Browser des Besuchers | nur nach Opt-in |
| Avatar-Abruf | Anfrage an Gravatar | bei jedem Seitenaufruf mit Kommentaren |

Die DSGVO verlangt in Art. 5 Abs. 1 lit. c Datenminimierung: nur so viele Daten wie für den Zweck nötig. Die IP-Adresse hilft bei der Spam- und Missbrauchsabwehr; ob Sie sie dafür vollständig und dauerhaft brauchen, müssen Sie selbst begründen können. Der User-Agent hat für die Kommentarfunktion kaum einen Zweck.

> **Prüfen:** Sie wissen, ob in `comment_author_IP` vollständige Adressen stehen und ob `comment_agent` befüllt ist.

## Schritt 2: IP-Adresse kürzen und User-Agent verwerfen

WordPress reicht beide Werte vor dem Speichern durch die Filter `pre_comment_user_ip` und `pre_comment_user_agent`. Dort setzen Sie an. Zum Kürzen bringt WordPress die Funktion `wp_privacy_anonymize_ip()` mit, die auch der Datenlöschungs-Assistent nutzt. Legen Sie die Datei `wp-content/mu-plugins/kommentar-datenschutz.php` an (Ordner `mu-plugins` bei Bedarf erstellen):

Datei: `wp-content/mu-plugins/kommentar-datenschutz.php`

```php
<?php
/**
 * Plugin Name: Kommentar-Datenschutz
 * Description: Speichert bei neuen Kommentaren keine vollständige IP-Adresse und keinen User-Agent.
 */

// IP-Adresse kürzen (IPv4: letztes Oktett auf 0).
add_filter( 'pre_comment_user_ip', function ( $ip ) {
	return wp_privacy_anonymize_ip( $ip );
} );

// Browser-Kennung (User-Agent) nicht speichern.
add_filter( 'pre_comment_user_agent', '__return_empty_string' );
```

Warum ein Must-Use-Plugin? WordPress lädt Dateien in `mu-plugins` immer, sie lassen sich im Backend nicht versehentlich deaktivieren und überstehen Theme-Wechsel. Code in der `functions.php` des Themes wäre beim nächsten Theme-Update weg.

So kürzt die Funktion, getestet per `wp eval`:

Ausgabe:

```plaintext
192.168.178.23 => 192.168.178.0
2001:db8:85a3:8d3:1319:8a2e:370:7348 => 2001:db8:85a3:8d3::
```

Bei IPv4 bleibt das Netz erhalten, bei IPv6 die ersten 64 Bit. Wer auch den verbleibenden Netzanteil nicht speichern möchte, gibt im Filter einfach eine leere Zeichenkette zurück.

Prüfen Sie die Datei vor dem Hochladen, falls Sie SSH haben:

```bash
$ php -l wp-content/mu-plugins/kommentar-datenschutz.php
```

> **Prüfen:** `php -l` meldet `No syntax errors detected`. Unter **Plugins > Installierte Plugins** erscheint der Reiter „Must-Use“ mit „Kommentar-Datenschutz“. Schreiben Sie einen Testkommentar und fragen Sie ihn wie in Schritt 1 ab. Im Beispiel steht danach `127.0.0.0` in `comment_author_IP` und `comment_agent` ist leer.

## Schritt 3: Diskussionseinstellungen datensparsam setzen

Öffnen Sie **Einstellungen > Diskussion**. Vier Einstellungen sind für den Datenschutz relevant:

- **„Das Opt-in-Kontrollkästchen für Kommentar-Cookies anzeigen, damit die Cookies des Kommentarautors gesetzt werden können“:** im Beispiel (Neuinstallation) aktiv, lassen Sie es so. Im Formular erscheint dann das Kästchen „Name, E-Mail-Adresse und Website in diesem Browser für meinen nächsten Kommentar speichern.“ Im Test füllte WordPress die Cookies `comment_author_…` und `comment_author_email_…` nur bei gesetztem Haken; ohne Haken schickte es leere Cookies mit Ablauf in der Vergangenheit, also eine Löschanweisung. Für nicht notwendige Cookies verlangt § 25 TDDDG eine Einwilligung; das Kästchen liefert sie.
- **„Avatare anzeigen“:** Bei aktivierter Anzeige lädt der Browser für jeden Kommentar-Avatar ein Bild von `secure.gravatar.com`. Im Test enthielt die Bildadresse einen Hashwert der E-Mail-Adresse des Kommentators, der Aufruf überträgt außerdem die IP-Adresse jedes Besuchers an den Dienst. Wenn Sie das nicht in der Datenschutzerklärung begründen möchten, entfernen Sie den Haken. Nach dem Abschalten enthielt die Beitragsseite im Test keinen Verweis auf Gravatar mehr.
- **„Kommentare bei alten Beiträgen automatisch schließen“:** Weniger offene Formulare bedeuten weniger Spam und weniger neue Daten. Den Zeitraum in Tagen legen Sie daneben fest.
- **„Bevor ein Kommentar erscheint, muss der Kommentar manuell freigegeben werden“:** Moderation verhindert, dass Besucher personenbezogene Daten Dritter öffentlich posten, bevor Sie es sehen.

Das Feld „Website“ im Formular ist optional. Pflichtfelder sind Name und E-Mail nur, wenn „Kommentarautoren müssen ihren Namen und ihre E-Mail-Adresse angeben“ aktiv ist. Ob Sie auf die E-Mail-Adresse verzichten, ist eine Abwägung zwischen Datensparsamkeit und Erreichbarkeit bei Rückfragen.

> **Prüfen:** Öffnen Sie einen Beitrag abgemeldet in einem privaten Fenster. Das Opt-in-Kästchen steht unter dem Formular und ist nicht vorausgewählt. In den Entwicklerwerkzeugen (F12, Reiter Netzwerk) erscheint keine Anfrage an `gravatar.com`, wenn Sie Avatare abgeschaltet haben.

## Schritt 4: Bestehende Kommentare nachträglich bereinigen

Das Must-Use-Plugin wirkt nur auf neue Kommentare. Alte Einträge behalten ihre vollständige IP-Adresse. Legen Sie vor diesem Schritt ein Datenbank-Backup an; die Änderung lässt sich ohne Backup nicht zurücknehmen:

```bash
$ wp db export vor-kommentar-bereinigung.sql
```

Der folgende Befehl geht alle Kommentare durch, kürzt die IP mit derselben Funktion und leert den User-Agent. Er nutzt die WordPress-API statt SQL, damit Caches und Hooks sauber laufen:

```bash
wp eval '
$n = 0;
foreach ( get_comments( array( "status" => "all", "number" => 0 ) ) as $c ) {
	$ip = wp_privacy_anonymize_ip( $c->comment_author_IP );
	if ( $ip !== $c->comment_author_IP || "" !== $c->comment_agent ) {
		wp_update_comment( array( "comment_ID" => $c->comment_ID, "comment_author_IP" => $ip, "comment_agent" => "" ) );
		$n++;
	}
}
echo "Geaendert: $n\n";'
```

Im Beispiel meldet der Befehl drei geänderte Kommentare. Beim Beispielkommentar ohne IP-Adresse setzte die Funktion `0.0.0.0` ein; das ist so vorgesehen. Bei sehr vielen Kommentaren führen Sie den Befehl außerhalb der Hauptlastzeit aus. Ohne SSH bereinigen Sie einzelne Personen über die Werkzeuge in Schritt 5.

> **Prüfen:** `wp comment list --fields=comment_ID,comment_author_IP,comment_agent` zeigt nur noch Adressen mit `.0` am Ende (IPv4) und leere User-Agents.

## Schritt 5: Auskunfts- und Löschanfragen bearbeiten

Verlangt eine Person Auskunft oder Löschung (Art. 15 und Art. 17 DSGVO), nutzen Sie die eingebauten Werkzeuge unter **Werkzeuge > Personenbezogene Daten exportieren** und **Werkzeuge > Personenbezogene Daten löschen**. Sie geben die E-Mail-Adresse ein, WordPress schickt eine Bestätigungsmail an die Person, nach Bestätigung führen Sie den Vorgang aus.

Die Löschung entfernt Kommentare nicht, sondern anonymisiert sie: Im Test stand danach als Autor „Anonym“, E-Mail und Website waren leer, die IP gekürzt. Der Kommentartext bleibt stehen. Enthält der Text selbst personenbezogene Angaben, bearbeiten oder löschen Sie den Kommentar zusätzlich von Hand unter **Kommentare**.

Denken Sie an Ihre Backups: Gesicherte Datenbanken enthalten die alten Daten weiter. Wie Sie Aufbewahrungsfristen und Löschpflichten in Backups regeln, beschreibt die Anleitung [DSGVO-Löschpflichten und Backups](https://s-edv.com/anleitungen/dsgvo-loeschpflichten-backups-logfiles-anleitung).

Eine datensparsame Kommentarfunktion ist keine einmalige Einstellung. Neue WordPress-Versionen und Plugins können eigene Felder oder externe Dienste mitbringen, und Spam-Plugins wollen gepflegt werden. Wer Updates, Backups und die Firewall nicht selbst betreuen möchte, kann sie abgeben: Die [WordPress-Wartung von wordpressupdate.de](https://wordpressupdate.de/?utm_source=s-edv.com&utm_medium=artikel&utm_campaign=68) spielt Updates von WordPress, Plugins und Themes innerhalb von 48 Stunden mit Kompatibilitätsprüfung ein und sichert die Website wöchentlich auf externen Speicher.

> **Prüfen:** Stellen Sie eine Testanfrage mit einer eigenen Adresse. Nach Ausführung zeigt die Kommentarliste „Anonym“ statt Ihres Namens.

## Typische Fehler

**Flood-Sperre greift nicht mehr über die IP:** WordPress prüft zu schnelle Folgekommentare, indem es die aktuelle IP mit gespeicherten Kommentaren vergleicht. Gespeichert ist aber nur noch die gekürzte Adresse. Im Test ohne Plugin lieferte der zweite Kommentar innerhalb von 15 Sekunden HTTP 429 mit dieser Meldung der deutschen Sprachdatei:

Ausgabe:

```plaintext
Du schickst deine Kommentare zu schnell ab. Bitte etwas langsamer.
```

Mit Plugin wurden zwei schnelle Kommentare mit verschiedenen E-Mail-Adressen angenommen. Gleichen Sie das mit einem Spam-Schutz aus, der ohne IP arbeitet, siehe [Spam in Kommentaren und Formularen datenschutzfreundlich abwehren](https://s-edv.com/anleitungen/wordpress-spam-kommentare-formulare-abwehren-datenschutz).

**Datei im Unterordner von `mu-plugins`**

WordPress lädt nur Dateien direkt im Ordner. Der Reiter „Must-Use“ bleibt dann leer.

**„Es gab einen kritischen Fehler auf dieser Website.“**

meist ein Syntaxfehler, oft typografische Anführungszeichen aus einem Textprogramm. Datei per SFTP umbenennen, dann lädt WordPress sie nicht mehr.

**Hinter Proxy oder CDN steht überall dieselbe IP**

WordPress speichert `REMOTE_ADDR`. Liegt ein Reverse-Proxy davor, ist das dessen Adresse. Die Kürzung schadet dann nicht, die IP war aber auch vorher wenig aussagekräftig.

**Spam-Plugin speichert eigene Daten**

Manche Plugins legen IP-Adressen in eigenen Tabellen oder Protokollen ab. Prüfen Sie deren Einstellungen separat.

## Häufige Fragen

### Reicht das für eine DSGVO-konforme Kommentarfunktion?

Es reduziert die gespeicherten Daten deutlich. Dazu gehören aber auch passende Angaben in der Datenschutzerklärung (Art. 13 DSGVO), eine festgelegte Speicherdauer und, falls Sie externe Spam-Dienste nutzen, ein Vertrag zur Auftragsverarbeitung. Die Bewertung Ihres Einzelfalls gehört zu Ihrem Datenschutzbeauftragten oder einer Rechtsberatung.

### Darf ich IP-Adressen zur Spam-Abwehr kurz vollständig speichern?

Viele Betreiber stützen das auf ein berechtigtes Interesse nach Art. 6 Abs. 1 lit. f DSGVO. Dann brauchen Sie eine kurze, begründete Frist und einen Mechanismus, der danach kürzt. Das Plugin oben kürzt sofort; eine zeitversetzte Lösung wäre ein regelmäßiger Lauf des Befehls aus Schritt 4 nur für ältere Kommentare.

### Brauche ich ein Plugin für die Datenschutz-Checkbox im Formular?

Nicht für Cookies, das Opt-in-Kästchen ist eingebaut. Eine Pflicht-Checkbox zur Datenschutzerklärung bringt WordPress nicht mit; ob Sie eine brauchen, hängt von Ihrer Rechtsgrundlage ab.

## Fazit

Mit einem kleinen Must-Use-Plugin, einer einmaligen Bereinigung und drei Häkchen in den Diskussionseinstellungen speichert Ihre Kommentarfunktion nur noch das Nötige. Den Verlust der IP-basierten Flood-Sperre fangen Sie mit einem datensparsamen Spam-Schutz auf. Halten Sie die Datenschutzerklärung aktuell und prüfen Sie nach größeren Updates, ob neue Plugins zusätzliche Daten erfassen. Wer diese Kontrolle zusammen mit Updates und Backups auslagern möchte, findet sie in der [WordPress-Wartung](https://wordpressupdate.de/?utm_source=s-edv.com&utm_medium=fazit&utm_campaign=68).

## Weiterführende Anleitungen und Quellen

- [Spam in Kommentaren und Formularen datenschutzfreundlich abwehren](https://s-edv.com/anleitungen/wordpress-spam-kommentare-formulare-abwehren-datenschutz)
- [DSGVO-Löschpflichten und Backups](https://s-edv.com/anleitungen/dsgvo-loeschpflichten-backups-logfiles-anleitung)
- [DSGVO-Praxis: TOMs dokumentieren und Auftragsverarbeitung regeln](https://s-edv.com/anleitungen/dsgvo-toms-auftragsverarbeitung-praxis)
- [WordPress-Datenbank mit WP-CLI sichern und wiederherstellen](https://s-edv.com/anleitungen/wordpress-datenbank-wp-cli-sichern-wiederherstellen)

Quellen:

- [Code Reference: Filter pre_comment_user_ip](https://developer.wordpress.org/reference/hooks/pre_comment_user_ip/)
- [Code Reference: Filter pre_comment_user_agent](https://developer.wordpress.org/reference/hooks/pre_comment_user_agent/)
- [Code Reference: wp_privacy_anonymize_ip()](https://developer.wordpress.org/reference/functions/wp_privacy_anonymize_ip/)
- [WordPress-Dokumentation: Diskussionseinstellungen](https://wordpress.org/documentation/article/settings-discussion-screen/)
- [WordPress-Dokumentation: Personenbezogene Daten löschen](https://wordpress.org/documentation/article/tools-erase-personal-data-screen/)
- [Datenschutz-Grundverordnung (EUR-Lex)](https://eur-lex.europa.eu/legal-content/DE/TXT/?uri=CELEX:32016R0679)
- [§ 25 TDDDG (gesetze-im-internet.de)](https://www.gesetze-im-internet.de/ttdsg/__25.html)
