WordPress: Spam mit Bordmitteln verhindern

Bild: (c) Horst Scheuer
Bild: (c) Horst Scheuer

Ja, das ist nicht der erste Artikel zum Thema „Wie werde ich den Kommentar-Spam los“. Ich hatte hier schon sehr viele Beiträge dazu. Angefangen vom Plugin Antispam Bee bis zum eigenen Honeypot-Snippet. Doch es geht auch wesentlich einfacher. Alles was man braucht ist etwas CSS und die „Kommentar-Sperrliste“.

Wenn ein Kommentar eines der folgenden Wörter innerhalb von Inhalt, Autornamen, URL, E-Mail-Adresse, IP-Adresse oder User-Agent-Zeichenkette des Browsers enthält, wird er in den Papierkorb verschoben.

Beschreibung in WordPress zur Kommentar-Sperrliste

Das alles geht aus der Idee hervor, dass WordPress alle Kommentare, die Wörter aus der Kommentar-Sperrliste enthalten, in den Papierkorb verschiebt. Wobei ich jetzt nicht der Erste bin, der diese Liste nutzt. Sogar Plugins kann man zu dem Thema installieren. Einige davon haben über 44.000 Begriffe und Phrasen für diese Liste.

Ein „Honeypot“ ist schnell erklärt. Man nehme ein zusätzliches Kommentarfeld und verstecke es per CSS vor dem Leser. Der Leser, der das Feld nicht sieht, wird es nicht ausfüllen. Der Spambot dagegen schon, denn der sieht die Seite anders. Fehlt nur noch eine einfache Abfrage, die klärt, ob das versteckte Feld ausgefüllt ist und den Kommentar dann als Spam behandelt.

Allerdings reicht ein einziger Eintrag um allen Spam in den Papierkorb zu verschieben. Ich gehe dabei von der Theorie aus, dass in jedem Spam-Kommentar mindestens ein Link zu finden ist und jeder Link fängt mit einem „http“ an. Deshalb reicht es in das Feld „Kommentar-Sperrliste“ eben dieses „http“ zu schreiben. Auch ein Honeypot klappt auf diese Art und Weise. Das Kommentarfeld „Website“ wird zu diesem Zweck per CSS ausgeblendet.

.comment-form-url,
.comment-form-url label,
.comment-form-url input {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 0;
  width: 0;
  z-index: -1;
}

Ich habe es getestet. Es funktioniert. Und das auch noch ohne ein „http://“ in der URL im Feld „Website“. Bei dieser Art Spam-Schutz gibt’s nur ein kleines Problem. Jeglicher Kommentar mit Link, auch sinnvolle Kommentare, werden auf diese Art und Weise in den Papierkorb verschoben. Für mich ist das kein Problem. Die sinnvollen Kommentare fische ich wieder raus.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.