E-Mail-Verification
Mit Version 3.7.0 kannst Du die E-Mail-Verifizierung aktivieren, um Spam zu verhindern und LLMs vom Erstellen von Kommentaren auszuschließen.
Bitte beachte, dass diese Funktion nur mit SQLite als Speichermethode funktioniert – sie funktioniert nicht mit Markdown.
Stelle sicher, dass Kirby für den E-Mail-Versand konfiguriert ist. Lies hier mehr darüber: https://getkirby.com/docs/guide/emails#transport-configuration
So funktioniert es:
- Deine Leserin schreibt einen Kommentar
- Sie erhält eine E-Mail mit einem Verifizierungslink
- Der Link läuft nach 48 Stunden ab (sofern nicht anders konfiguriert)
- Neue Kommentare erhalten den Status PENDING
- Der Link öffnet eine virtuelle Kirby-Seite
- Wenn sie auf den Link klickt
- Ändert sich der Kommentarstatus zu VERIFIED
- Wird der Verifizierungslink ungültig
- Wenn sie nicht rechtzeitig auf den Link klickt
- Wird dieser ungültig
- Wird der Kommentar als Spam markiert oder gelöscht

Grundlegende Einrichtung
Um diese Funktion zu aktivieren, musst du mindestens zwei Optionen in deiner config.php konfigurieren:
'mauricerenck' => [
'komments' => [
'spam' => [
'verification' => [
'enabled' => true,
'secret' => 'my-extremly-secure-secret'
]
]
]
]
Dies aktiviert die Funktion. Das Secret wird verwendet, um den Verifizierungstoken für jeden Kommentar zu erstellen.
Mit dieser Einrichtung ist der Token 48 Stunden lang gültig. Nach dieser Zeit wird er gelöscht und der Kommentar als Spam markiert.
Du kannst ändern, wie lange der Token gültig sein soll, indem du deinen Wert (in Stunden) festlegst:
'mauricerenck' => [
'komments' => [
'spam' => [
'verification' => [
'ttl' => 8,
]
]
]
]
Du kannst auch entscheiden, was passiert, wenn der Benutzer auf den Verifizierungslink klickt:
'mauricerenck' => [
'komments' => [
'spam' => [
'verification' => [
'autoPublish' => true,
]
]
]
]
Wenn du autoPublish auf true setzt, wird der Kommentar automatisch veröffentlicht, sobald der Benutzer ihn verifiziert. Andernfalls ändert sich der Kommentarstatus von "PENDING" zu "VERIFIED".
Umgekehrt kannst du entscheiden, was passiert, wenn der Benutzer nicht auf den Link klickt. Standardmäßig wird der Kommentar als Spam markiert, sobald die Verifizierung abläuft. Wenn du den deletionMode festlegst, wird er stattdessen gelöscht:
'mauricerenck' => [
'komments' => [
'spam' => [
'verification' => [
'deletionMode' => 'delete',
]
]
]
]
Templates anpassen
Sowohl die E-Mail als auch das Template der virtuellen Verifizierungsseite sind sehr minimal gehalten, und du möchtest sie wahrscheinlich anpassen.


Du kannst dies tun, indem du eigene Templates erstellst.
E-Mail-Template
Erstelle eine neue Datei mit dem Namen mailverification.php unter site/templates/emails
Du hast Zugriff auf folgende Variablen:
<?php
$username // The name the user entered
$expireHours // When the link will expire
$verificationUrl // the url the user has to visit
Template für virtuelle Seite
Erstelle eine neue Datei mit dem Namen comment-verified.php unter site/templates. Stelle sicher, dass du den notwendigen Code hinzufügst, wenn du Details des Kommentars anzeigen möchtest. Du findest das Original-Template hier: https://github.com/mauricerenck/komments/blob/main/templates/pages/comment-verified.php
Unverifizerte Kommentare im Panel anzeigen
Standardmäßig werden unverifiziert Kommentare im Panel und den Notifications ausgeblendet. Erst wenn sie verifiziert wurden, tauchen sie auf. Um dieses Verhalten zu ändern, kannst du es mit folgender Option deaktivieren:
'mauricerenck' => [
'komments' => [
'spam' => [
'verification' => [
'filterUnverified' => false,
]
]
]
]
Kommentar schreiben