Blogs erleben gerade eine Renaissance, viele Menschen wenden sich von den zentralen und geschlossenen Plattformen ab. Viele neue Blogs entstehen und alte Blogs wachen wieder auf. Das ist schön, aber noch tun wir uns etwas schwer damit, uns zu vernetzen.
Das Komments- und IndieConnector-Plugin möchte es dir ein wenig leichter machen. Empfängst du eine Webmention, kannst du ab sofort darauf direkt aus dem Panel heraus antworten.
Mini-Exkurs: Webmentions
Um zu verstehen, wie das funktioniert, müssen wir uns ansehen, wie Webmentions funktionieren. Nehmen wir zwei Blogs, die beide Webmentions unterstützen:
- Blog A veröffentlicht einen Beitrag
- Blog B reagiert in einem eigenen Beitrag auf den von Blog A
- Beim Veröffentlichen des Beitrags von Blog B, schickt Blog B die Beitrags-URL an Blog A
- Blog A empfängt die URL, ruft diese auf und liest die Daten aus
- Blog A kann nun den Post von Blog B als Kommentar anzeigen
Natürlich passiert noch viel mehr im Hintergrund, aber für diesen Beitrag konzentrieren wir uns auf die Grundlagen.
Antworten senden
Nehmen wir an, wir sind Blog A und haben gerade die Webmention von Blog B mit dem IndieConnector empfangen, die wir mit dem Komments-Plugin unter unserem Beitrag anzeigen.
Würden wir nun auf diesen Kommentar antworten, würde Blog B davon gar nichts mitbekommen. Die Betreiberin von Blog B müsste gezielt unseren Beitrag aufrufen und schauen, ob wir eventuell reagiert haben.
Mit dem neuen Feature in den beiden Plugins lässt sich das ändern!
Antworten wir im Panel auf die Webmention, wird unsere Antwort nicht nur als Kommentar auf unserer Seite gespeichert, sondern zugleich wird auch eine Webmention zurück an Blog B geschickt.
Empfängt Blog B unsere Webmention, wird es versuche unsere Seite auszulesen und hier geraten wir an das erste Problem, denn einerseits enthält unsere Seite diverse Kommentare und andererseits würden die Microformate auf unserer Seite dafür sorgen, dass unser Artikel als Webmention ausgelesen wird, nicht der Kommentar.
Mit einem kleinen Trick können wir das jedoch ändern.
Kommentare
Wusstest du, dass jeder Kommentar auf deiner Seite einen eigenen Permalink hat? Einen Deeplink, wie du ihn vielleicht von Deinen normalen Seite kennst. Kirbys Permalinks sehen so aus: https://example.com/@/page/some-unique-id
.
Und auch jeder Kommentar bekommt eine Identifikationsnummer, eine UUID. Das Kommets-Plugin stellt außerdem eine Route bereit, mit der Du jeden Kommentar über seine UUID aufrufen kannst. Schaust du dir im Panel die Details eines Kommentars an, siehst du diesen Permalink:

Rufst du diesen Permalink auf, wird die Seite geöffnet, zur welcher der Kommentar gehört und zum Kommentar gescrollt.
Dieses Verhalten lässt sich nun aber ändern.
In der config.php
können wir nun folgende Option aktivieren:
'mauricerenck.komments.webmentions.sendReplies' => true
Die sorgt zum einen dafür, dass eine Webmention verschickt wird, sobald wir im Panel auf eine Webmention antworten, andererseits ändert es auch das Verhalten des Permalinks.
Anstatt beim Aufruf des Permalinks zum Kommentar zu scrollen, wird eine einzelne Seite angezeigt, die nur den Kommentar inklusive Microformats enthält.
Damit bezieht sich die verschickte Webmention nicht mehr auf den Beitrag, sondern ausschließlich auf deinen Kommentar. Dieser kann in unserem Beispiel von Blog B ausgelesen und angezeigt werden.
Webmentions verschicken
Normalerweise verschickt das IndieConnector-Plugin Webmentions nur dann, wenn es in einer Seite beim Veröffentlichen oder Speichern Links entdeckt. In unserem speziellen Fall speichern oder veröffentlichen wir aber keine Seite. Damit beide Plugins zusammenarbeiten können, müssen wir dem IndieConnector ebenfalls sagen, dass es auf Kommentar-Webmentions reagieren soll:
'mauricerenck.indieConnector.send.hook.enabled' => true
Diese Option aktiviert einen neuen Hook, der jetzt von anderen Plugins ausgelöst werden kann und der daraufhin eine Webmention verschickt. Das Komments-Plugin ruft diesen Hook auf und IndieConnector verschickt die Webmention.
Damit taucht unser Kommentar sowohl in unserem Blog als auch in Blog B auf und die Betreiberin von Blog B bekommt das automatisch mit, ohne ständig bei uns nachschauen zu müssen. 🥳
Fazit
Mit nur zwei Änderungen in Deiner config kannst du dein Blog nun noch besser mit anderen vernetzen. Wenn mehr Webseiten dieses oder ein ähnliches Feature implementieren, werden sie Schritt für Schritt zu einem dezentralen Netzwerk – ganz ohne aufwendige Serververwaltung oder Konfigurationen.
Das Template für einzelne Kommentare ist ziemlich simpel aufgebaut, Du kannst es aber, wie alle Templates in Kirby, einfach mit Deinem eigenen überschreiben, indem du eine neue PHP-Datei anlegst: `site/templates/komment-response.php'
Kopiere am besten den Inhalt aus site/plugins/komments/templates/response.php
und passe ihn so an, wie du magst. Achte aber darauf, dass die Microformats erhalten bleiben, damit andere Seiten in der Lage sind, den Inhalt korrekt auszulesen.
Das ist der erste Schritt, ich plane weitere Verfeinerungen, wie das Liken einer Webmention zum Beispiel.
Das Feature steht dir ab Version 2.7.1 des IndieConnectors und 3.1.0 des Komments-Plugins zur Verfügung. Viel Spaß damit!
Kommentar schreiben