JPKCom Disable Comments — Anleitung & Tipps
Kommentare in WordPress mit JPKCom Disable Comments komplett abschalten — Installation, Voraussetzungen und Praxis-Tipps.
JPKCom Disable Comments deaktiviert die Kommentar-Funktion des WordPress-Cores für die gesamte Website. Praktisch, wenn du Kommentare auf einer Unternehmens- oder Dokumentationsseite grundsätzlich nicht benötigst. Die Anmerkungen im Block-Editor (englisch „Notes“) funktionieren dabei weiter.
Anleitung
Voraussetzungen
- WordPress 6.9 oder neuer (getestet bis WordPress 7.1)
- PHP 8.3 oder neuer
Installation
- Gehe im Admin-Bereich zu Plugins → Installieren und klicke auf Plugin hochladen.
- Wähle die ZIP-Datei des Plugins und klicke auf Jetzt installieren.
- Klicke auf Aktivieren.
Wie es wirkt
Es gibt keine Einstellungsseite — sobald das Plugin aktiv ist, schaltet es die Kommentar-Funktionalität des Cores global ab. Kommentar- und Trackback-Unterstützung wird jedem Post-Typ entzogen, Kommentare und Pings sind zwangsweise geschlossen, und die Kommentar-Seite, der Menüpunkt sowie der Eintrag in der Adminleiste verschwinden.
Darüber hinaus schließt das Plugin die Wege, über die Kommentare sonst sichtbar oder erreichbar bleiben:
- Das Dashboard zeigt weder eine Kommentar-Zahl noch eine Moderationsliste.
- Die Kommentar-Feeds (
/comments/feed/und<beitrag>/feed/) liefern 404 statt gespeicherter Kommentare; die zugehörigen Discovery-Links entfallen. Das gilt auch für die Schreibweisen mit Query-String (?feed=comments-rss2,?p=123&feed=rss2): Diese bekommen die 404 direkt, ohne WordPress' Umleitung auf eine sprechende URL (Permalink), die ebenfalls 404 liefern würde. Der normale Beitrags-Feed unter/feed/bleibt erhalten. - Jeder Beitrag meldet null Kommentare (seit 1.0.11). Damit tragen
/feed/und der Atom-Feed keine Kommentar-Links und -Zähler mehr, die auf nicht erreichbare Kommentar-Feeds zeigen würden, und Themes geben kein „N Kommentare“ mehr aus. - Die REST-Endpunkte für Kommentare antworten mit 404 (Ausnahme: Anmerkungen, siehe unten), und zwar genau so, wie WordPress auf eine fehlende Route antwortet (
rest_no_route). REST-Antworten zu Beiträgen meldencomment_statusundping_statusalsclosed.
Anmerkungen im Block-Editor
Die Anmerkungen im Block-Editor (englisch „Notes“, seit WordPress 6.9) speichert WordPress als Kommentare vom Typ note und liest und schreibt sie über dieselben REST-Routen wie normale Kommentare. Bis einschließlich 1.0.10 hat das Plugin diese Routen entfernt (und ab 1.0.9 zusätzlich jede Kommentar-Abfrage geleert) und damit auch die Anmerkungen lahmgelegt.
Seit 1.0.11 bleiben die Routen registriert, und das Plugin entscheidet pro Anfrage: Anfragen nach Anmerkungen — die Sammel-Route mit type=note (Auflisten und Anlegen) oder eine bestehende Anmerkung über ihre ID — reicht es an WordPress weiter, dessen eigene Rechteprüfung unverändert bestimmt, wer sie lesen und schreiben darf. Jede andere Anfrage auf diesen Routen bekommt die 404. Geprüft wird dabei der Kommentar, den WordPress tatsächlich laden würde: Nennt eine Anfrage auf der Route einer Anmerkung per id-Parameter im Query-String oder im Request-Body einen anderen Kommentar, gibt es ebenfalls die 404. Über die Route einer Anmerkung lässt sich also kein normaler Kommentar lesen, ändern oder löschen.
Weil die Routen registriert bleiben, führt der REST-Index unter /wp-json/ sie wieder auf.
Bestehende Kommentare werden nicht gelöscht — sie bleiben in der Datenbank, nur außer Reichweite von Frontend, Feeds und REST-API. Deaktivierst du das Plugin, sind sie wieder sichtbar.
Tipps & Tricks
- Global statt pro Beitrag: Das Plugin wirkt seitenweit — du musst Kommentare nicht mehr in jedem einzelnen Beitrag oder jeder Seite manuell deaktivieren.
- Feeds waren das Leck: Bis Version 1.0.8 waren bereits vorhandene Kommentare über die Kommentar-Feeds weiterhin öffentlich abrufbar. Diese Feeds baut
WP_Querydirekt über$wpdbund umgeht damit den Filter, auf den sich das Plugin verließ. Wenn du auf einer älteren Version abgeschaltet hattest, lohnt nach dem Update ein Blick auf/comments/feed/. - Anmerkungen vermisst? Wenn Anmerkungen im Block-Editor bei aktivem Plugin nicht funktioniert haben, lag das am Plugin: Erst ab 1.0.11 lässt es sie durch.
- Dashboard erst seit 1.0.9 sauber: Vorher blieben die Kommentar-Zahl in „Auf einen Blick" und die Moderationsliste im Aktivitäts-Widget stehen.
- REST-API berücksichtigt: Kommentare sind auch über die API nicht erreichbar — jede Anfrage auf die Kommentar-Routen, die keine Anmerkung betrifft, bekommt eine 404. Seit 1.0.11 gilt das auch für
OPTIONS-Anfragen, die bei der früher entfernten Route eine leere 200 bekamen. Der gespeichertecomment_statusin der Datenbank wird dabei bewusst nicht angefasst — gemeldet wirdclosed, und die Felder behalten ihren Platz in der Antwort, damit der Block-Editor die erwartete Struktur vorfindet. - Reproduzierbare Updates: Ab Version 1.0.2 nutzt das Plugin sichere, selbst gehostete Updates über GitHub mit SHA256-Prüfsummen und arbeitet mit
declare(strict_types=1). Seit 1.0.10 trägt es außerdem den HeaderUpdate URI: Die Update-Schnittstelle von wordpress.org liefert für dieses Plugin dann keine Updates mehr, ein dort veröffentlichtes Plugin mit demselben Slug kann sich also nicht als Update ausgeben. Seit 1.0.12 zeigt Dashboard → Aktualisierungen das JPKCom-Logo neben dem Plugin. - Updates auch im deaktivierten Zustand: Seit 1.0.13 bringt das Plugin Updater 1.5.0 mit. Ein geladener Updater 1.5.0 bedient alle installierten JPKCom-Plugins, aktiv oder nicht, mit Update-Zeile, Icon und „Details anzeigen“ — ist dieses Plugin aktiv, übernimmt es das also auch für deine deaktivierten JPKCom-Plugins. Ist es selbst deaktiviert, bekommt es Updates nur angeboten, wenn ein anderes JPKCom-Plugin mit Updater 1.5.0 oder neuer aktiv ist, denn der Code eines deaktivierten Plugins läuft nicht. Die SHA256-Prüfung gilt dabei genauso. Auf Multisite muss mindestens ein JPKCom-Plugin netzwerkweit oder auf der Hauptseite aktiv sein. Die gespeicherte Update-Liste enthält keine JPKCom-Download-Adressen mehr; sie kommen nur zurück, solange ein JPKCom-Updater geladen ist. Die Prüfsumme gilt auch für ein Paket, das ein anderes Plugin liefert, und für jede GitHub-Adresse der Release-Datei. Liegt das Plugin als Git- oder anderer Versionskontroll-Checkout vor, erfährst du von neuen Versionen, WordPress bietet aber kein Update an („Eine automatische Aktualisierung für dieses Plugin ist nicht verfügbar.“) — das Update würde den Checkout löschen, du aktualisierst ihn also selbst. Dasselbe gilt für ein aktives Plugin in einem umbenannten Ordner (etwa
jpkcom-disable-comments-main), denn das Update würde den Ordner löschen; deaktiviert findet der Updater es dort gar nicht. Update-Infos holt der Updater nur für Konten, die Plugins aktualisieren dürfen, im Update-Cron und in WP-CLI, nie für anonyme Besucher. - Alles in einem Plugin: JPKCom Harden & Trim enthält seit Version 1.1.0 den Schalter „Kommentare deaktivieren“, der sich wie dieses Plugin in Version 1.0.11 verhält, dazu 40 weitere Einstellungen für Sicherheit, Datenschutz und Performance. Beide parallel zu betreiben schadet nicht; dieses Plugin sollte dann aber mindestens auf 1.0.11 stehen, sonst bleiben die Anmerkungen im Block-Editor blockiert.
Weiterführende Informationen
- Quellcode auf GitHub: https://github.com/JPKCom/jpkcom-disable-comments (öffnet in neuem Tab)
- API-Dokumentation (PHPDoc): https://jpkcom.github.io/jpkcom-disable-comments/docs/ (öffnet in neuem Tab)
- Changelog dieses Projekts