Czy próbujesz poprawić nieprawidłowy błąd JSON w WordPress?
Ten błąd pojawia się podczas edycji wpisów lub stron WordPress w twojej witrynie internetowej. Pojawi się komunikat „Odpowiedź nie jest prawidłową odpowiedzią JSON”, a aktualizacja strony zakończy się niepowodzeniem.
W tym artykule pokażemy, jak łatwo poprawić nieprawidłowy błąd JSON w WordPress. Porozmawiamy również o tym, dlaczego ten błąd występuje i jak go uniknąć w przyszłości.
Co powoduje błąd „Nieprawidłowa odpowiedź JSON” w WordPress?
Nieotrzymanie oczekiwanej odpowiedzi z serwera powoduje błąd „Nieprawidłowa odpowiedź JSON” w WordPress.
Zasadniczo WordPress musi komunikować się z serwerem podczas edycji wpisu na blogu. Polega to na otrzymywaniu odpowiedzi z serwera WWW w tle. Ta odpowiedź jest zwykle w formacie JSON, który służy do szybkiego przesyłania danych za pomocą JavaScript.
Jeśli z jakiegoś powodu WordPress nie otrzyma odpowiedzi lub odpowiedź nie jest w formacie JSON, pojawi się błąd „Nieprawidłowa odpowiedź JSON”.
Błąd ten może pojawić się z wielu powodów. Jednak najbardziej prawdopodobną przyczyną są nieprawidłowe ustawienia adresów URL w WordPress lub uszkodzone bezpośrednie odnośniki.
W związku z tym przyjrzyjmy się, jak łatwo poprawić nieprawidłowy błąd JSON w WordPress. Możesz użyć tych szybkich odnośników, aby przejść do różnych metod:
- Option 1. Check WordPress URLs in Settings
- Option 2. Fix WordPress Permalink Structure
- Option 3. Regenerate WordPress .htaccess File
- Option 4. View the REST API Debug Log
- Option 5. Deactivate All WordPress Plugins
- Option 6. Temporarily Switch to the Classic Editor
- Option 7. Switch to a Default WordPress Theme
- Option 8. Temporarily Turn Off Website Application Firewall
- Option 9. Turn On Debugging in WordPress
- Option 10. Check for Mixed Content Error
- Final Step: Seek Expert Help
Uwaga: Przed wprowadzeniem jakichkolwiek dużych zmian w twojej witrynie internetowej wykonaj pełną kopię zapasową WordPress. Umożliwi to łatwe przywrócenie Twojej witryny internetowej do poprzedniego stanu.
Opcja 1. Sprawdź adresy URL WordPress w Ustawieniach
Po pierwsze, musisz upewnić się, że twoje ustawienia adresu WordPress i adresu witryny są prawidłowe.
Wystarczy przejść do strony Ustawienia ” Ogólne. W tym miejscu należy przejrzeć pola „Adres WordPress (URL)” i „Adres URL witryny”.
W przypadku większości witryn internetowych to ustawienie musi mieć ten sam adres URL w obu polach.
Jednak rzadko, niektórzy użytkownicy WordPressa mogli nadać WordPressowi własny katalog i serwować witrynę internetową pod innym adresem. W takim przypadku mogą mieć tutaj różne adresy URL.
Jeśli jednak twój adres witryny jest nieprawidłowy, spowoduje to wyświetlenie nieprawidłowego błędu JSON w WordPress.
Jeśli wprowadziłeś jakiekolwiek zmiany w ustawieniach, nie zapomnij kliknąć przycisku „Zapisz zmiany”. Możesz teraz edytować wpis na blogu i sprawdzić, czy dodanie nowych bloków lub zapisanie tego wpisu powoduje błąd „Niepoprawna odpowiedź JSON”.
Jeśli nadal widzisz błąd, czytaj dalej.
Opcja 2. Poprawka struktury permalinka WordPressa
WordPress posiada przyjazną dla SEO strukturę adresów URL, która pozwala na używanie adresów URL dla twoich wpisów i stron.
Czasami jednak użytkownik może zepsuć ustawienia bezpośredniego odnośnika. Uniemożliwiłoby to edytorowi bloków WordPress uzyskanie prawidłowej odpowiedzi JSON i spowodowałoby pojawienie się błędu.
Aby to poprawić, należy po prostu przejść na stronę Ustawienia ” Permalinki. Z tego miejsca należy dokładnie przejrzeć opcje permalinków.
Jeśli nie masz pewności, czy używasz właściwych ustawień, po prostu wybierz jeden z domyślnych formatów.
Następnie kliknij przycisk „Zapisz zmiany”, aby zapisać twoje ustawienia.
Możesz teraz spróbować edytować wpis na blogu lub stronę, aby sprawdzić, czy błąd zniknął. Jeśli nie, możesz spróbować wykonać następny krok.
Opcja 3. Regeneracja pliku .htaccess WordPress
Plik .htaccess w WordPress jest używany jako plik konfiguracyjny do zarządzania przyjaznymi dla SEO adresami URL (bezpośrednimi odnośnikami).
Zwykle WordPress może automatycznie zregenerować i zaktualizować plik. Możesz również uruchomić tę aktualizację, klikając przycisk „Zapisz zmiany” u dołu strony Ustawienia ” Permalinki.
Czasami jednak może nie zostać zaktualizowany lub mieć nieprawidłowe ustawienia. Będzie to miało wpływ na twoje bezpośrednie odnośniki WordPress i może również powodować nieprawidłowy błąd odpowiedzi JSON.
Aby to poprawić, należy połączyć się z witryną internetową za pomocą klienta FTP lub aplikacji do zarządzania plikami w kokpicie konta hostingowego WordPress.
Po nawiązaniu połączenia należy zlokalizować plik .htaccess w katalogu głównym twojej witryny internetowej i pobrać go jako kopię zapasową na swój komputer.
Wskazówka: Nie możesz zlokalizować pliku .htaccess? Zobacz ten krótki artykuł o tym, jak znaleźć plik.htaccess.
Następnie należy edytować plik .htaccess za pomocą klienta FTP lub aplikacji do zarządzania plikami.
Po otwarciu pliku należy usunąć cały znajdujący się w nim kod i zastąpić go następującym kodem:
# BEGIN WordPress
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
Nie zapomnij zapisać swoich zmian i przesłać pliku z powrotem do witryny internetowej.
Możesz teraz przejść na swoją witrynę internetową i edytować wpis lub stronę, aby sprawdzić, czy możesz odtworzyć błąd nieprawidłowej odpowiedzi JSON.
Jeśli nadal widzisz błąd, możesz wykonać jeszcze kilka kroków.
Opcja 4. Zobacz dziennik debugowania REST API
Błąd nieprawidłowej odpowiedzi JSON może również oznaczać, że interfejs API REST WordPress na twojej witrynie internetowej napotkał błąd.
REST API to zestaw technik używanych przez WordPress do komunikacji z serwerem WWW podczas pracy nad twoją witryną internetową.
Możesz zobaczyć szczegóły tego błędu w narzędziu WordPress Site Health. Przejdź na stronę Narzędzia ” Zdrowie witryny.
W tym miejscu może pojawić się problem oznaczony jako „The REST API encountered an unexpected result”.
Kliknięcie na nią wyświetli więcej szczegółów, które mogą dać ci wskazówki na temat tego, która wtyczka lub usługa innej firmy powoduje problem.
Jeśli nie dostarczy to żadnych wskazówek, możesz przejść do następnego kroku.
Opcja 5. Wyłączanie wszystkich wtyczek WordPressa
Czasami wtyczki WordPress mogą wchodzić w konflikt ze sobą lub z rdzeniem oprogramowania WordPress. Może to skutkować nieoczekiwanym zachowaniem i może być potencjalną przyczyną nieprawidłowego błędu JSON.
Wystarczy przejść do strony Wtyczki ” Zainstalowane wtyczki. W tym miejscu wybierz wszystkie twoje wtyczki WordPress, a następnie wybierz „Wyłącz” z rozwijanego menu „Masowe działania”. Teraz kliknij przycisk „Zastosuj”, aby kontynuować.
WordPress wyłączy teraz wszystkie twoje zainstalowane wtyczki.
Możesz teraz spróbować ponownie odtworzyć błąd. Jeśli błąd zniknie, oznacza to, że powodowała go jedna z wtyczek zainstalowanych na twojej witrynie internetowej.
Aby dowiedzieć się, która wtyczka stanowi problem, wystarczy włączać je jedna po drugiej i spróbować odtworzyć błąd. Powtarzaj tę czynność, aż znajdziesz winowajcę.
Następnie można skontaktować się z autorem wtyczki w celu uzyskania pomocy technicznej lub znaleźć alternatywną wtyczkę.
Opcja 6. Tymczasowe przełączenie na edytor klasyczny
Kolejną opcją jest tymczasowe przełączenie się na klasyczny edytor WordPress.
Ta starsza wersja edytora WordPress korzysta z prostszego edytora tekstu i nie polega w dużym stopniu na interfejsie API REST w celu uzyskania odpowiedzi JSON.
Aby z niego skorzystać, należy zainstalować i włączyć wtyczkę Classic Editor. Aby uzyskać więcej informacji, zobacz nasz przewodnik krok po kroku, jak zainstalować wtyczkę WordPress.
Wtyczka działa po wyjęciu z pudełka i wyłącza edytor Gutenberg po włączaniu.
Alternatywnie możesz użyć WPCode, aby wyłączyć edytor Gutenberg i bezpiecznie włączać klasyczny edytor. Jest to najłatwiejsza i najbezpieczniejsza wtyczka do wstawienia fragmentów kodu w WordPressie.
Przeczytaj ten przewodnik, aby dowiedzieć się , jak wyłączyć Gutenberga za pomocą WPCode.
Możesz teraz kontynuować pracę nad twoją witryną internetową i wrócić do rozwiązywania problemów później.
Opcja 7. Przejście na domyślny motyw WordPressa
Motywy WordPress innych firm mogą czasami powodować konflikty z rdzeniem WordPressa lub innymi wtyczkami, zwłaszcza jeśli nie są dobrze zakodowane lub utrzymywane. Konflikty te mogą objawiać się na różne sposoby, w tym nieprawidłowym błędem JSON.
Przełączając się na domyślny motyw, zasadniczo usuwasz wszelki własny kod lub funkcje wprowadzone przez twój obecny, aktualny motyw.
Pomaga to wyizolować, czy problem pochodzi z samego motywu, czy z czegoś innego w twojej konfiguracji WordPress.
Aby to zrobić, przejdź do Wygląd „ Motywy w twoim kokpicie WordPress. Następnie znajdź domyślny motyw, taki jak Twenty Twenty-Four lub Twenty Twenty-Three i kliknij „Włączanie”.
Opcja 8. Tymczasowe wyłączenie zapory aplikacji internetowej
Jeśli korzystasz z zapory WordPress, takiej jak Sucuri, Cloudflare lub wtyczki, może ona czasami blokować również uzasadnione żądania.
Najprostszym sposobem na sprawdzenie tego jest tymczasowe wyłączenie twojej wtyczki lub usługi zapory WordPress.
Niektóre zapory WordPress na poziomie aplikacji można wyłączyć, po prostu wyłączając wtyczkę. W przypadku zapór na poziomie DNS, takich jak Sucuri i Cloudflare, możesz je wyłączyć z kokpitu twojego konta.
Opcja 9. Włącz debugowanie w WordPress
WordPress posiada wbudowaną funkcję, która pozwala na prowadzenie dziennika błędów. Nie jest ona jednak włączona domyślnie.
Aby ją włączyć, musisz dodać następujący kod do twojego pliku wp-config.php:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
Następnie WordPress będzie logował się do pliku debug.log znajdującego się w katalogu /wp-content/
. Dostęp do tego pliku można uzyskać za pomocą klienta FTP.
Dziennik błędów może dostarczyć ci wskazówek na temat tego, co może być przyczyną nieprawidłowego błędu JSON na twojej witrynie internetowej. Aby uzyskać więcej informacji, zapoznaj się z naszym przewodnikiem na temat konfigurowania dzienników błędów WordPress i używania ich do debugowania błędów.
Opcja 10. Sprawdź błąd mieszanej treści
Gdy witryna internetowa obsługiwana przez HTTPS (zabezpieczona) próbuje wczytywać zasoby (obrazki, skrypty, dane) z niezabezpieczonego źródła HTTP, powoduje to błąd mieszanej treści.
Nowoczesne przeglądarki blokują mieszane treści ze względów bezpieczeństwa. Ma to na celu uniemożliwienie atakującym wstrzyknięcia złośliwej treści do zabezpieczonej witryny internetowej za pośrednictwem niezabezpieczonego zasobu.
Jeśli zablokowany zasób jest plikiem JSON lub skryptem pobierającym dane JSON, przeglądarka może nie być w stanie uzyskać do niego pełnego dostępu. Te niekompletne lub zablokowane dane mogą następnie prowadzić do błędów parsowania, co skutkuje nieprawidłowym błędem JSON.
Aby dowiedzieć się, jak go rozwiązać, przeczytaj nasz przewodnik na temat poprawki błędu mieszanej treści w WordPress.
Ostatni krok: Poszukaj pomocy eksperta
Wreszcie, jeśli wszystko inne zawiedzie, może to być spowodowane błędną konfiguracją na twoim serwerze hostingowym WordPress. Większość niezawodnych firm hostingowych WordPress jest w stanie pomóc użytkownikom w rozwiązywaniu typowych problemów z WordPressem.
Po prostu skontaktuj się z nimi za pośrednictwem czatu na żywo lub biletu pomocy technicznej, a być może będą w stanie pomóc ci to poprawić. Możesz przeczytać nasz przewodnik na temat tego, jak prawidłowo poprosić o pomoc techniczną WordPress, aby uzyskać więcej informacji.
Mamy nadzieję, że ten artykuł pomógł ci dowiedzieć się, jak poprawić nieprawidłowy błąd JSON w WordPress. Warto również zapoznać się z naszym kompletnym podręcznikiem dotyczącym najczęstszych błędów WordPressa i sposobów ich poprawki, a także z naszymi najlepszymi ofertami najlepszych usług e-mail marketingu dla małych firm.
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.
Tim Hordo
I solved this for my website by simply removing the apostrophe from the name of the file I was trying to upload.
WPBeginner Support
Thanks for sharing that should someone else run into that issue
Administrator
Tomas Svitorka
Amazing article and helped me fix this annoying issue right away! FYI – my solution was simply to regenerate the htaccess file!
WPBeginner Support
Glad to hear our guide was helpful!
Administrator
Ram
#3 worked for me!! (simply clicking on the ‘Save Changes’ button at the bottom of Settings » Permalinks page.)
Thanks for publishing such helpful blogs!
WPBeginner Support
You’re welcome! Glad to hear you were able to solve the error!
Administrator
Benjamin
It sounds weird.
I did a test by creating new article and publishing it with a „Test” title and „Test” body … It worked.
But when I started to copy/past the content I wanted.. Json appear again.
WPBeginner Support
If you mean you followed these steps and it appeared again then you would want to start from step 4 for fixing the issue!
Administrator
Benjamin
Classic editor solution worked well. thanks
Chris
In my case, the issue was the uploaded image dimensions. Anything above 2000 pixels was causing the error.
WPBeginner Support
Thank you for sharing what was the cause of the error for you. If you did not try it, you should be able to increase the maximum upload limit for your site to prevent image sizes being an issue in the future.
Administrator
Angie
Thank you, after installing an SSL some pages were bringing up the 404. This helped me realize I needed to change http:// to https:// in General settings and it fixed the problem.
WPBeginner Support
Glad our article was helpful!
Administrator
matt
Thank you for the detailed instructions on how to fix this json error in wordpress. I tried all above ideas to fix. None of them worked. The solution I found was turning off mod security in hosting control panel (cpanel).
Thanks
WPBeginner Support
Thank you for sharing what worked for you!
Administrator
Brad Cathey
One can also be using a deprecated or non-existing WordPress function.
This has happened to me twice, both times when saving a page in the editor. I systematically commented out functions in functions.php, and eventually, the error stopped. The offending function was something I scrapped off someone’s blog without really understanding it. So, be careful.
WPBeginner Support
Thank you for sharing this for anyone looking for the root of the issue on their site!
Administrator
Witt
I was having this issue and narrowed it to to trying to save anything containing the content „delete it.”
I haven’t dug in to verify this, but I’m pretty sure Apache mod_security is triggering on that content, thinking it’s part of a sql injection attack and blocking the request.
I just reworded my content to avoid that phrase. If that’s not an option, you can disable mod_security or write an exception.
WPBeginner Support
Thanks for sharing another possible reason why users could run into this issue!
Administrator
Mike
Really good article thanks. Life saver
WPBeginner Support
Glad we could help solve this issue!
Administrator
Letowon Saitoti Abdi
Changing the lines in the .htaccess was the magic for me, thanks a bunch.
WPBeginner Support
Glad our recommendation was helpful!
Administrator
Alex Slaets
I had another, stupid cause: mod_rewrite was not enabled in apache configuration. enabling it fixed the error.
WPBeginner Support
Thanks for sharing this should someone else run into this issue!
Administrator
Chris J
If you are using IIS, you need to make sure „OPTIONS” is permitted as one of your „HTTP VERBS”.
Launch Internet Information Service (IIS) Manager at Windows Start > All Programs > Windows Administrative Tools.
In IIS Manager, expand SERVERNAME > Sites > click example.com > Handler Mappings (under IIS).
Find the handler which is used by the website and double-click on it.
Double-click on your PHP handler (there may be more than one listed)
Click Request Restrictions….
Switch to the Verbs tab.
Add required verbs in to the verbs field, for example:
GET,HEAD,POST,OPTIONS
Click OK to apply the changes in both windows.
WPBeginner Support
Thank you for sharing this for those using IIS, for most users we would normally recommend reaching out to your hosting provider for this level of modification
Administrator
Hussain
Thanks, number 2 worked for me.
WPBeginner Support
Glad our guide was helpful!
Administrator
Michael Kumsa
Thanks a lot, I just finished a $25K project, and this site helped me a lot! Love ya!
WPBeginner Support
Glad our content was helpful!
Administrator
Adri
Great help, thanks a lot!!
WPBeginner Support
Glad we could help you fix the error
Administrator
Alex
Thank so much for your help
WPBeginner Support
Glad our guide could help
Administrator
Abadat Ali
My site error:
Updating failed. The response is not a valid JSON response
I solved my error from this instructions;
Fix WordPress Permalink Structure
Thank you this helping.
WPBeginner Support
Glad our guide was able to help you solve the issue
Administrator
Sholly Young
Hi, thank you for this detailed write up, I’ve read through it and find it so detailed and insightful.
However, I have an unanswered question which is this:
Could this error be as a result of invalid or expired SSL certificate?
WPBeginner Support
That can cause different errors but this specific error would not normally be caused by an SSL certificate.
Administrator