Du klickst auf „Veröffentlichen“ — und der Editor meldet lapidar: „Veröffentlichung fehlgeschlagen. Die Antwort ist keine gültige JSON-Antwort.“ Diese Meldung hat eine präzise technische Bedeutung: Der Gutenberg-Editor spricht mit WordPress über die REST-API — und deren Antwort kam nicht an oder war keine.
Was da technisch passiert
Beim Speichern schickt der Editor deinen Inhalt per JavaScript an /wp-json/wp/v2/posts/… und erwartet JSON zurück. Kommt stattdessen eine Fehlerseite, eine Firewall-Blockade, eine Weiterleitung oder HTML — bricht der Editor mit genau dieser Meldung ab. Die Suche gilt also der Frage: Wer verstellt der REST-API den Weg?
Schnelltest: Ist die REST-API erreichbar?
Rufe im Browser auf: deine-domain.de/wp-json/ — erscheint eine lange JSON-Ausgabe, ist die API grundsätzlich da. Erscheint 403, 404 oder eine leere Seite, ist sie blockiert. Auch der Bericht unter Werkzeuge → Website-Zustand meldet REST-API-Probleme ausdrücklich.
Die üblichen Blockierer
- Sicherheits-Plugins: Viele „REST-API deaktivieren“-Optionen (auch in SEO- und Security-Suiten) sperren die API komplett oder für nicht angemeldete Nutzer — und treffen versehentlich den Editor. Prüfe die Einstellungen von Wordfence, iThemes, Disable-REST-API-Plugins & Co. und nimm angemeldete Benutzer aus.
- .htaccess-Regeln: Handgeschriebene Sperren wie
RewriteRule ^wp-json - [F]aus alten Härtungs-Anleitungen. Datei prüfen, Regel entfernen oder auf nicht angemeldete Nutzer begrenzen. - Hoster-Firewall / ModSecurity: POST-Anfragen mit viel HTML-Inhalt wirken auf Firewalls verdächtig. Typisch: Kurze Texte speichern funktioniert, lange oder solche mit Code-Beispielen scheitern. Das behebt nur der Hoster durch eine Regelausnahme.
- Cloudflare & Co.: Bot-Schutz oder WAF-Regeln fangen die API-Aufrufe ab. In den Security-Events nachsehen und /wp-json/ für angemeldete Sitzungen ausnehmen.
- Umleitungs-Konflikte: Wenn die Site-URL nicht zur aufgerufenen Domain passt (www/non-www, http/https), wird der API-Aufruf umgeleitet — und JSON geht verloren.
WP_HOME/WP_SITEURLkonsistent setzen; verwandt: Redirect-Schleifen. - Kaputte Permalinks: /wp-json/ liefert 404, obwohl nichts blockiert? Dann fehlen die Umschreibregeln: Einstellungen → Permalinks → Speichern — siehe Permalinks neu setzen.
- Plugin-Konflikt im Editor: Auch ein fehlerhaftes Plugin, das sich in den Editor einhängt, bricht das Speichern. Der Klassiker-Test: Alle Plugins kurz deaktivieren — klappt das Speichern, per Halbierungsverfahren eingrenzen.
Wichtig: Dein Text ist meist nicht verloren
Gutenberg hält den Inhalt im Browser. Bevor du irgendetwas testest: Markiere den kompletten Beitragsinhalt und kopiere ihn in eine lokale Datei. Zusätzlich legt WordPress lokale Autosaves an — beim erneuten Öffnen des Beitrags bietet der Editor die Wiederherstellung an.
Nicht zu empfehlen: der Classic-Editor-Ausweg
Der Wechsel zum Classic Editor „löst“ das Problem scheinbar, weil er ohne REST-API speichert. Aber er kaschiert nur die Blockade — die API brauchen inzwischen auch viele Plugins, Apps und Integrationen. Die saubere Lösung ist immer, den Blockierer zu finden.
Solche Konfigurations-Fallen entstehen oft durch gut gemeinte Härtung ohne Blick aufs Ganze. Im Shield-Modul von Ammera Care härten wir WordPress so, dass Sicherheit und Funktion zusammenpassen — getestet, dokumentiert, ohne den Editor zu opfern. Die Module ansehen.