Ratgeber · WordPress-Hilfe
Keine gültige JSON-Antwort in WordPress: Ursachen und Lösung
Die Meldung „Die Antwort ist keine gültige JSON-Antwort.“ bedeutet, dass der Block-Editor beim Speichern statt der erwarteten Daten eine Fehlerseite, eine Umleitung oder eine Sperre vom Server zurückbekommen hat. Prüfen Sie nach einer Sicherung in dieser Reihenfolge die Permalinks, die Website-Adresse, die REST-API im Website-Zustand, Sicherheits-Plugins und Firewall sowie HTTPS, bevor Sie an die Datei .htaccess gehen.
Was bedeutet „Die Antwort ist keine gültige JSON-Antwort“?
Die Meldung bedeutet: Der Block-Editor (auch Gutenberg genannt) hat Ihre Seite an den Server geschickt, aber eine Antwort zurückbekommen, die er nicht lesen kann. Der Editor spricht mit WordPress über die REST-API, eine Schnittstelle, über die Daten im Format JSON hin- und hergehen, also als reiner, maschinenlesbarer Text. Kommt statt JSON eine Fehlerseite, eine Umleitung oder eine Sperrseite zurück, meldet der Editor den Fehler.
Je nachdem, was Sie gerade getan haben, steht oben im Editor einer dieser Sätze:
- „Die Aktualisierung ist fehlgeschlagen. Die Antwort ist keine gültige JSON-Antwort.“
- „Die Veröffentlichung ist fehlgeschlagen. Die Antwort ist keine gültige JSON-Antwort.“
- „Die Planung ist fehlgeschlagen. Die Antwort ist keine gültige JSON-Antwort.“ (bei einem geplanten Beitrag)
Im Website-Editor (Design → Editor) erscheint nur der zweite Satz, „Die Antwort ist keine gültige JSON-Antwort.“ Er kann auch bei anderen Aktionen im Block-Editor auftauchen, die über dieselbe Schnittstelle laufen. Die Schritte unten gelten dann genauso.
Der Fehler sitzt also nicht in Ihrem Text, sondern auf dem Weg zwischen Editor und Server. Das ist die gute Nachricht: Mit den Schritten unten lässt sich die Ursache eingrenzen, ohne dass Sie etwas an Ihren Inhalten ändern müssen.
Was sollten Sie tun, bevor Sie etwas ändern?
Sichern Sie zuerst Ihren Text und die Website. Die letzte Änderung ist auf dem Server nicht gespeichert, sie steht nur noch im geöffneten Editor. Lassen Sie den Tab offen, markieren Sie den Inhalt und kopieren Sie ihn in eine Textdatei.
Prüfen Sie dann, ob es eine aktuelle Sicherung gibt. Eine vollständige Sicherung umfasst die Dateien und die Datenbank, in der WordPress Ihre Inhalte speichert. Schauen Sie im Kundenbereich Ihres Hosters nach, also der Firma, auf deren Servern die Website liegt, ob er Sicherungen anbietet, und legen Sie eine an. Notieren Sie außerdem, was Sie zuletzt geändert haben: ein neues Plugin (Zusatzprogramm für WordPress), ein Update, ein Umzug, die Umstellung auf HTTPS. Die letzte Änderung ist die erste Spur.
Hilft es, die Permalinks neu zu speichern?
Ja, das ist der erste und harmloseste Schritt. Permalinks sind die festen Adressen Ihrer Seiten, etwa /kontakt/. Damit diese Adressen funktionieren, schreibt WordPress Umleitungsregeln, auf Servern mit dem Serverprogramm Apache in die Datei .htaccess. Fehlen diese Regeln oder sind sie veraltet, erreicht der Editor die REST-API nicht.
- Öffnen Sie Einstellungen → Permalinks.
- Ändern Sie nichts und klicken Sie unten auf „Änderungen speichern“.
- Laden Sie den Editor neu und speichern Sie noch einmal.
Laut WordPress-Dokumentation erneuert schon das Aufrufen der Permalink-Seite die Regeln. Das Speichern schadet trotzdem nicht. Zeigt WordPress danach den Hinweis, dass Sie die .htaccess selbst ändern sollen, ist die Datei nicht beschreibbar. Dann lesen Sie den Abschnitt zur .htaccess weiter unten, bevor Sie etwas kopieren.
Stimmt die Website-Adresse in Einstellungen → Allgemein?
Prüfen Sie, ob die beiden Adressen dort zur Adresse passen, unter der Sie die Website tatsächlich aufrufen. Unter Einstellungen → Allgemein stehen die „WordPress-Adresse (URL)“ und die „Website-Adresse (URL)“. Stimmen sie nicht mit der Adresse in Ihrer Browserzeile überein, etwa mit statt ohne www, kann die Anfrage des Editors an eine Adresse gehen, die umleitet oder blockiert wird.
Hier ist Vorsicht nötig: Eine falsche Eingabe in diesen Feldern kann dazu führen, dass Sie die Website und den Admin-Bereich nicht mehr erreichen. Schreiben Sie die alten Werte vorher ab. Ändern Sie nur, wenn Sie sicher wissen, welche Adresse richtig ist, und tippen Sie sie vollständig, mit https://. Sperren Sie sich trotzdem aus, lassen sich die alten Werte über die wp-config.php wieder eintragen. Das erledigt Ihr Hoster oder wir, die notierten Werte helfen dabei. Sind die Felder grau und nicht änderbar, sind die Adressen in der Konfigurationsdatei wp-config.php fest eingetragen. Das ist ein Fall für Ihren Hoster oder für uns.
Was zeigt der Website-Zustand zur REST-API?
Der Website-Zustand sagt Ihnen, ob WordPress seine eigene Schnittstelle erreicht. Öffnen Sie Werkzeuge → Website-Zustand. Im Reiter „Zustand“ prüft WordPress unter anderem die REST-API. Achten Sie auf Meldungen wie „Bei der REST-API ist ein Fehler aufgetreten“ oder „Die REST-API kam zu einem unerwarteten Ergebnis“. Klappen Sie den Eintrag auf: Darunter steht, was der Server geantwortet hat, zum Beispiel eine Fehlernummer wie 401, 403 oder 500.
Diese Angaben sind die wichtigste Spur. Eine 403 deutet auf eine Sperre hin, zum Beispiel durch ein Sicherheits-Plugin oder eine Firewall. Eine 500 heißt, dass der Server selbst abgebrochen ist; dann hilft unser Artikel zum kritischen Fehler in WordPress. Im Reiter „Bericht“ finden Sie den Knopf „Bericht in die Zwischenablage kopieren“. Diesen Text können Sie Ihrem Hoster oder uns schicken; Angaben, die WordPress als vertraulich markiert, etwa Datenbankname und Datenbankbenutzer, lässt es dabei weg.
Blockiert ein Sicherheits-Plugin oder eine Firewall die Anfrage?
Das ist eine der Ursachen, die uns immer wieder begegnen. Sicherheits-Plugins und Firewalls, also Filter, die verdächtige Anfragen abweisen, halten das Speichern im Editor manchmal für einen Angriff, zum Beispiel bei Texten mit Code, Skripten oder eingebetteten Inhalten. Die Firewall kann in einem Plugin sitzen, beim Hoster oder bei einem vorgeschalteten Dienst wie einem CDN, einem Netz von Servern, das Ihre Website zwischenspeichert und ausliefert.
So testen Sie es, ohne die Besucher zu stören:
- Installieren Sie das kostenlose Plugin „Health Check & Troubleshooting“ von wordpress.org. Unter Werkzeuge → Website-Zustand finden Sie dann den Reiter „Problembehandlung“ mit dem Knopf „Problembehandlungsmodus aktivieren“. Der Modus schaltet alle Plugins ab und nutzt ein Standard-Theme, aber nur für Ihre eigene Sitzung.
- Lässt sich die Seite in diesem Modus speichern, schalten Sie die Plugins dort einzeln wieder zu, bis der Fehler zurückkommt. Das zuletzt zugeschaltete ist der Kandidat.
- Bleibt der Fehler auch ohne Plugins, fragen Sie Ihren Hoster, ob seine Firewall (zum Beispiel ModSecurity) Anfragen an /wp-json/ blockiert hat. Nennen Sie die Uhrzeit, zu der Sie gespeichert haben.
Schalten Sie ein Sicherheits-Plugin nicht dauerhaft ab, nur um speichern zu können. Besser ist eine Ausnahme für die REST-API in seinen Einstellungen oder ein Hinweis an den Hersteller. Wie Sie Plugins auswählen und pflegen, steht in Kapitel 6 unseres Leitfadens.
Kann HTTPS oder Mixed Content der Grund sein?
Nur mittelbar: Die Umstellung auf HTTPS allein löst diese Meldung nicht aus. HTTPS ist die verschlüsselte Verbindung, die ein SSL-Zertifikat möglich macht, erkennbar am Schloss in der Adresszeile. Rufen Sie den Admin-Bereich über https auf, stellt WordPress die Adresse seiner Schnittstelle selbst auf https um, auch wenn in den Einstellungen noch http steht. Die JSON-Meldung entsteht nur, wenn eine Antwort ankommt, die kein JSON ist, etwa eine Fehlerseite, die Sperrseite einer Firewall oder die Seite, auf die eine Umleitung führt.
Blockiert der Browser die Anfrage dagegen, zum Beispiel weil sie unverschlüsselt über http laufen soll (Mixed Content, also gemischte Inhalte), kommt gar keine Antwort an. Dann lautet der zweite Satz der Meldung anders, etwa „Die Aktualisierung ist fehlgeschlagen. Es konnte keine gültige Antwort vom Server abgerufen werden.“ Die Ursache liegt auch dann auf dem Weg zwischen Editor und Server, und die Schritte in diesem Artikel helfen genauso.
Nach einer Umstellung auf HTTPS lohnt trotzdem ein Blick in den Website-Zustand, Bereich HTTPS. Seit WordPress 5.7 bietet er einen Knopf, der beide Adressen auf HTTPS umstellt, wenn der Server HTTPS unterstützt, und die Umstellung wieder zurücknimmt, wenn WordPress die Website danach nicht als HTTPS erkennt. Fehlt das Zertifikat oder ist es abgelaufen, ist das Sache des Hosters. Was beim Umstellen sonst zu beachten ist, steht in Kapitel 10 zum Livegang.
Wann ist die .htaccess dran, und wann der Hoster?
An die .htaccess gehen Sie erst, wenn die Schritte oben nichts gebracht haben, und nur mit einer Kopie. Die Datei liegt im Hauptordner von WordPress, dort, wo auch die Ordner wp-admin und wp-content liegen. Sie ist versteckt, weil ihr Name mit einem Punkt beginnt; in Ihrem SFTP-Programm (SFTP ist die verschlüsselte Dateiübertragung auf den Server) müssen Sie versteckte Dateien eventuell erst einblenden. Nicht jeder Server nutzt die Datei: Läuft Ihre Website auf dem Serverprogramm Nginx statt Apache, gibt es sie nicht, und die Regeln stellt der Hoster ein; welches Programm läuft, weiß Ihr Hoster.
- Laden Sie die .htaccess auf Ihren Rechner herunter. Das ist Ihre Sicherung.
- Benennen Sie die Datei auf dem Server um, zum Beispiel in .htaccess-alt. Löschen Sie sie nicht.
- Rufen Sie Einstellungen → Permalinks auf und klicken Sie auf „Änderungen speichern“. WordPress legt die Regeln neu an.
- Testen Sie den Editor. Ist der Fehler weg, lag es an der alten Datei. Schicken Sie die Kopie Ihrem Hoster: Regeln außerhalb von „# BEGIN WordPress“ und „# END WordPress“ stammen von Plugins oder vom Hoster, etwa eine Weiterleitung auf https oder Cache-Regeln, und gehören geprüft wieder hinein. Bleibt der Fehler oder lädt die Website nicht mehr, löschen Sie die neue .htaccess und benennen Sie .htaccess-alt wieder in .htaccess um.
Fügen Sie keine Zeilen aus Foren oder fremden Anleitungen in die .htaccess ein. Ein falsches Zeichen dort kann die ganze Website mit einem Fehler 500 lahmlegen.
Hören Sie auf und holen Sie Hilfe, wenn Sie keine Sicherung haben, wenn der Website-Zustand eine Sperre durch den Server zeigt oder wenn der Fehler nach allen Schritten bleibt. Ihr Hoster sieht im Fehlerprotokoll des Servers, warum die Anfrage abgewiesen wurde, und ist für Firewall, Zertifikat und Serverregeln zuständig. Schicken Sie ihm den kopierten Bericht aus dem Website-Zustand, die genaue Meldung und die Uhrzeit. Wenn Sie lieber gleich jemanden draufschauen lassen wollen, finden Sie unter WordPress-Hilfe, wie wir vorgehen. Arbeiten Sie mit Elementor statt mit dem Block-Editor, lesen Sie auch unseren Artikel zum Elementor Server Error 500.
Zum Abhaken
Checkliste: in dieser Reihenfolge prüfen
Ihre Haken bleiben in diesem Browser gespeichert, sonst nirgends.
Häufige Fragen dazu
Ist mein Text verloren, wenn „keine gültige JSON-Antwort“ erscheint?
Die letzte Änderung ist auf dem Server nicht gespeichert, sie steht aber noch im geöffneten Editor. Schließen Sie den Tab nicht, markieren Sie den Inhalt und kopieren Sie ihn in eine Textdatei. Früher gespeicherte Fassungen bleiben in WordPress erhalten.
Was ist eine JSON-Antwort?
JSON ist ein Textformat, in dem Programme Daten austauschen. Der WordPress-Block-Editor schickt Ihre Seite über die REST-API an den Server und erwartet eine Antwort in diesem Format. Kommt stattdessen eine Fehlerseite oder eine Sperrseite zurück, zeigt der Editor „Die Antwort ist keine gültige JSON-Antwort.“
Hilft es, auf den klassischen Editor umzusteigen?
Der klassische Editor speichert auf einem anderen Weg, die Meldung kann dort deshalb ausbleiben. Die Ursache bleibt aber bestehen: Die REST-API von WordPress funktioniert weiter nicht, und andere Funktionen und Plugins brauchen sie auch. Besser ist es, die Ursache zu finden und zu beheben.
Gibt es ein Plugin, das den JSON-Fehler in WordPress behebt?
Ein Plugin, das jede Ursache behebt, gibt es nicht, weil der Fehler viele Auslöser haben kann. Das kostenlose Plugin „Health Check & Troubleshooting“ hilft aber bei der Suche: Sein Problembehandlungsmodus schaltet alle Plugins ab und nutzt ein Standard-Theme, laut Plugin-Beschreibung nur für Ihren eigenen Benutzer, bis Sie den Modus beenden oder sich abmelden.
Wann sollte ich wegen des JSON-Fehlers meinen Hoster fragen?
Wenn Permalinks, Website-Adresse und ein Test ohne Plugins nichts geändert haben, wenn der Website-Zustand eine Sperre durch den Server zeigt oder wenn das SSL-Zertifikat fehlt. Der Hoster sieht im Fehlerprotokoll des Servers, warum die Anfrage abgewiesen wurde. Schicken Sie ihm die genaue Meldung, die Uhrzeit und den Bericht aus dem Website-Zustand.
Belege Quellen anzeigen (10)
- WordPress REST API Handbook (developer.wordpress.org)
- Quelltext des Block-Editors, api-fetch: Fehler „invalid_json“ (GitHub, WordPress/gutenberg)
- Quelltext des Block-Editors, api-fetch: Fehler „fetch_error“, wenn keine Antwort ankommt (GitHub, WordPress/gutenberg)
- WordPress Code Reference: get_rest_url() (Adresse der Schnittstelle bei https im Admin-Bereich)
- WordPress-Dokumentation: Settings Permalinks Screen
- WordPress-Dokumentation: Settings General Screen (WordPress-Adresse, Website-Adresse)
- WordPress Advanced Administration Handbook: Changing the Site URL
- WordPress-Dokumentation: Site Health Screen
- Plugin „Health Check & Troubleshooting“ (wordpress.org)
- Make WordPress Core: Improved HTTPS detection and migration in WordPress 5.7
So etwas für Ihre Website?
WordPress-Hilfe und Support
Sie hängen fest, Ihre Seite ist kaputt oder langsam? Wir helfen Ihnen weiter.
Sie möchten es nicht selbst machen?
Wir übernehmen das für Sie.
Beschreiben Sie kurz, wo Sie stehen. Das Formular dauert rund zwei Minuten, die Einschätzung ist kostenlos.
- 01 Anliegen
- 02 Projekt
- 03 Kontakt