WordPress: Mit Hooks Text zum Kommentarfeld hinzufügen (inkl. Code)

By | 5. Juni 2018

Eine Sprechblase ein der WordPress-Hooks steht

WordPress Hooks sind ein wunderbares Mittel, bestehenden Programmcode zu erweitern. Wenn ich es in einem Wort beschreiben müsste, würde ich sagen, dass Hooks Platzhalter sind. Dank dieser Platzhalter, kann man individuellen Code ausführen und/oder Text an der jeweiligen Stelle, auch verändert, ausgeben.

Da ich dank der DSGVO gerade ein konkretes Beispiel zur Hand habe, möchte ich euch das natürlich nicht vorenthalten. In meinem heutigen Tutorial zeige ich dir, wie du einen eigenen Text zum WordPress Kommentar mittels Hooks hinzufügen kannst. Damit kann beispielsweise der DSGVO-Hinweis, bevor der Kommentar abgesendet wird, eingeblendet werden. Über der Kommentarfunktion ist meines Erachtens auch ein sehr guter Platz für eine Werbeanzeige. Wer bis zu den Kommentaren scrollt und sie auch noch durchliest, hat vermutlich gesteigertes Interesse an dem Thema. Auch das könntest du damit realisieren. Die Einsatzmöglichkeiten sind also breit gefächert.

Anzeige:  –  Datenschutz

Companisto

Welche Kommentar-Hooks gibt es?

Insgesamt gibt es sechs Stellen, an denen man seinen eigenen Text im WordPress-Kommentar ausgeben kann.

Um es anschaulicher zu gestalten, habe ich die möglichen Hooks visualisiert:

Die sechs Stellen der verfügbaren WordPress Hooks für Kommentare

comment_from_before

Mit diesem Hook fügst du Code oder Text vor der “Schreibe einen Kommentar” Aufforderung aus.

comment_from_top

Hiermit wird der Hook vor dem Kommentarfeld ausgeführt.

comment_from_before_fields

Bevor das erste Standardfeld angezeigt wird, kann der gewünschte Code eingefügt werden. Dieser Hook wird nur ausgeloggten Usern angezeigt!

comment_form_after_fields

Wird vor dem Absendebutton ausgeführt. Ideal also für den Hinweis zum Datenschutz. Wird ebenfalls nur ausgeloggten Usern angezeigt!

comment_form

Wird nach dem Absendebutton ausgeführt.

comment_form_after

Noch eine Position darunter.

Kommentar Hook DSGVO Code-Beispiel

Wenn du runter zu meinen Kommentaren scrollst, wirst du sehen, dass ich dort einen Datenschutzhinweis angebracht habe. Da ich selbst kein Anwalt bin, habe ich einfach den Passus aus meiner anwaltlich generierten Datenschutzerklärung hinzugefügt mit dem Hinweis auf die Selbige. Da meine Datenschutzerklärung aus einem Premium-Angebot stammt, kann ich diese hier nicht weiterempfehlen. Für mein Beispiel nutze ich den Passus vom Datenschutzgenerator von Herrn Dr. Schwenke. Hierfür braucht man ab einem gewissen Umsatz jedoch auch eine Lizenz.

Anzeige: – Datenschutz

Pro forma muss ich an dieser Stelle erwähnen, dass das keine Rechtberatung darstellt und du bei Unklarheiten lieber einen Anwalt konsultieren solltest. Auch übernehme ich keine Haftung für diesen Tipp.

function text_zum_kommentar_hinzufuegen() {
    echo 'Wenn Nutzer Kommentare oder sonstige Beiträge hinterlassen, 
          können ihre IP-Adressen auf Grundlage unserer berechtigten Interessen 
          im Sinne des Art. 6 Abs. 1 lit. f. DSGVO für 7 Tage gespeichert werden. 
          Das erfolgt zu unserer Sicherheit, falls jemand in Kommentaren 
          und Beiträgen widerrechtliche Inhalte hinterlässt 
          (Beleidigungen, verbotene politische Propaganda, etc.). 
          In diesem Fall können wir selbst für den Kommentar oder Beitrag belangt 
          werden und sind daher an der Identität des Verfassers interessiert.
          Des Weiteren behalten wir uns vor, auf Grundlage unserer berechtigten 
          Interessen gem. Art. 6 Abs. 1 lit. f. DSGVO, die Angaben der Nutzer 
          zwecks Spamerkennung zu verarbeiten. 
          Auf derselben Rechtsgrundlage behalten wir uns vor, 
          im Fall von Umfragen die IP-Adressen der Nutzer für deren Dauer zu 
          speichern und Cookies zu verwenden, um Mehrfachabstimmungen zu vermeiden.
          Die im Rahmen der Kommentare und Beiträge angegebenen Daten, 
          werden von uns bis zum Widerspruch der Nutzer dauerhaft gespeichert.
          (<a href="https://datenschutz-generator.de/" target="_blank" rel="noopener,nofollow">Erstellt mit Datenschutz-Generator.de von RA Dr Thomas Schwenke</a>)
 
          Mehr Informationen zur Datenverarbeitung, der Rechtsgrundlage und Ihren Widerrufsrechten 
          erhalten Sie in unserer <a href="https://deine-domain.de/datenschutzbestimmungen" target="_blank" rel="nofollow noopener">Datenschutzerklärung</a>
          ';
}
add_action('comment_form_after_fields', 'text_zum_kommentar_hinzufuegen');

Wie du siehst habe ich eine eigene Funktion mit dem Namen text_zum_kommentar_hinzufügen erstellt. In dieser wird dank dem echo-Befehl der gewünschte HTML-Formatierte Text ausgegeben. Mittels dem <br> Code kannst du noch einen Zeilenumbruch an beliebiger Stelle einfügen. Den Link zu deiner Datenschutzerklärung musst du selbst ergänzen.

Am Ende der eigenen Funktion folgt die add_action() Funktion, die im WordPress-Codex definiert ist. Das Wichtigste, was man an dieser Stelle dazu wissen muss ist, dass in den ersten Anführungszeichen der Name des verwendeten Hooks stehen muss und in den zweiten Anführungszeichen der Name deiner eigenen Funktion.

add_action('name_des_hooks', 'name_deiner_funktion');

Ich habe mich entschieden, den Hook “comment_form_after_fields” für die Ausgabe des Datenschutzhinweises zu verwenden. Zum einen, weil man sich auf meinem Blog gar nicht anmelden kann, es also egal ist, dass er eingeloggt nicht erscheint. Zum anderen finde ich ihn über dem Absendebutton am Sinnvollsten.

Lesetipp: Meine Studie, wie marketingwirksam Blog-Kommentare wirklich sind.

Hook-Einbau

Nun hast du die Funktion und weißt auch, wie man den Hook dank dem add_action()-Befehl ausführt. Doch wohin muss der Code, damit er ausgeführt wird?

Viele WordPress-Ratgeber empfehlen, den Codeschnipsel in der function.php – Datei deines Themes anzuhängen. Das hat allerdings den Nachteil, dass er entweder beim nächsten Update wieder hinzugefügt werden muss oder du im Falle eines Child-Themes keine Sicherheitsupdates eingespielt bekommst.

Deshalb erstelle ich selbst bei kleinen Code-Schnipsel immer ein eigenes (Mini-)Plugin. Dafür sind sie meiner Meinung nach auch da. Wie du ganz einfach und schnell ein eigenes Plugin erstellst, erfährst du hier. In dieses Plugin kopierst du obigen Code-Schnipsel, lädst es hoch und aktivierst es. Und schon hast du lange Zeit deine Ruhe (bis zur nächsten Gesetzesänderung :D).

Ich würde mich freuen, wenn du meinen Newsletter abonnieren würdest. Dann verpasst du auch keinen interessanten Beitrag mehr.

Mein Newsletter informiert dich über Themen der Selbständigkeit, Bloggen, Marketing und Programmierung. Informationen zum Anmeldeverfahren, Versanddienstleister, statistischer Auswertung und Widerruf findest du in meinen Datenschutzbestimmungen



Zusatztipps – Kommentare & DSGVO

Da das Beispiel vermutlich auch viele Leser, die ihren Blog und im Speziellen die WordPress-Kommentare DSGVO-Konform gestalten möchten, habe ich abschließend noch vier Handlungsempfehlungen für euch, die ihr unbedingt umsetzen solltet:

1. Name darf kein Pflichtfeld sein

Im Dashboard unter Einstellungen->Diskussion den Haken bei “Benutzer müssen zum Kommentieren Name und E-Mail-Adresse angeben” entfernen. Laut DSGVO darf man nur die persönlichen Daten einfordern, die wirklich nötig sind.

2. Avatare deaktivieren

Da die Kommentar-Avatare über den externen Server von Gravatar bezogen werden, kann man die Funktion gar nicht ohne den Austausch von persönlichen Daten realisieren. Das DSGVO konform zu gestalten ist rechtlich unsicher und technisch auch nicht ganz ohne. Also deaktiviert es lieber.

Zu finden ebenfalls im Dashboard unter Einstellungen->Diskussion. Am Ende den Haken bei “Avatare anzeigen” entfernen.

3. Datenschutzkonformes Spam-Plugin verwenden

Viele WordPress-Seiten haben von Haus aus Akismet als Anit-Spam-Plugin installiert. Das leitet die IP-Adresse und den Kommentar selbst an Servern im Ausland weiter. Dafür bräuchtest du einen AV-Vertrag und die Erlaubnis der User.

Am Besten du verwendest ein Spam-Plugin, dass das nicht tut. Beziehungsweise, bei dem man es deaktivieren kann. Das deutsche Plugin Antispam Bee kann man datenschutzkonform einstellen. Wie das funktioniert, kannst du in diesem Blogbeitrag nachlesen.

4. IP-Adresse des Kommentierenden löschen

In der Datenschutzerklärung selbst steht, dass die IP-Adressen nach sieben Tagen gelöscht werden. Das solltest du auch einhalten. Leider gibt es kein Plugin, dass das automatisch nach sieben Tagen macht. Das Plugin Remove Comments IP macht das nach 60 Tagen. Manuell kann man das auch in der Datenbank mit folgendem SQL-Befehl machen:

UPDATE `wp_comments` SET `comment_author_IP`='127.0.0.1' WHERE `comment_date` <= '2018-06-05'

Wobei wp_ der Standardprefix ist. Sollten deine Tabellen einen anderen Prefix (in diesem Beitrag erkläre ich, was ein Tabellenprefix ist) verwenden musst du diesen anpassen. Das Datum solltest du natürlich auch anpassen in Heute minus sieben Tage. Im Format Jahr, Monat, Tag.

Robert von Plötzlich-Selbständig.de Schwarz/Weiß Bild

Ich freue mich von dir zu hören!

Du kommst bei deinem Projekt nicht weiter oder brauchst einen Boost? Dann lass dir von mir helfen zum Beispiel bei:

► Beratung für Selbständige, Gründer & Ideenschmiede
Egal, ob du erste Tipps brauchst. Einmal über deine Idee reden möchtest oder mit mir das Konzept für das nächste Facebook ausarbeiten willst.

► Entwicklung von Software, APPs & Webseiten
Beispielsweise: WordPress Shops & Plugins, (Gaming-)Apps, Datenbank-Applikationen oder andere smoothe Anwendungen!

Mehr Infos, Preise und Kontaktmöglichkeiten findest du hier!

Schreibe einen Kommentar

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

Im Rahmen der Kommentarfunktion auf dieser Website werden neben Ihrem Kommentar auch Angaben zum Zeitpunkt der Erstellung des Kommentars und der von Ihnen gewählte Kommentatorenname gespeichert und auf der Website veröffentlicht. Ferner wird Ihre IP-Adresse mitprotokolliert und gespeichert. Diese Speicherung der IP-Adresse erfolgt aus Sicherheitsgründen und für den Fall, dass die betroffene Person durch einen abgegebenen Kommentar die Rechte Dritter verletzt oder rechtswidrige Inhalte postet.
Mehr Informationen zur Datenverarbeitung, der Rechtsgrundlage und Ihren Widerrufsrechten erhalten Sie in unserer Datenschutzerklärung