Ошибка загрузки блока: Ответ не является допустимым ответом JSON
После очередного обновления WordPress команда разработчиков сделала всем очень «приятный подарок» — изменили панель настроек виджетов. Теперь же работа виджетов построена на редакторе «Гутенберг», как и в случае с редактором публикаций статей.
Лично я нахожу редактор «Гутенберг» отвратительным, не интуитивным и просто чей-то глупой шуткой. Но, каждому свое. Есть те, кому он нравится и считают его прогрессивным решением. В общем, если вы решили его использовать, но столкнулись с ошибкой «Ответ не является допустимым ответом JSON», то давайте рассмотрим вариант ее решения.
Решение
Причин может быть множество, включая полностью индивидуальными. Но есть одна определенная причина, это отключение событий REST API. Уверен, что у многих в файле functions.php что-то подобное есть, или отключение событий за счет плагинов-оптимизаторов.
Все что нужно сделать, так это удалить код, который отключает событий REST API. Выглядит он примерно так:
ТОП 5 ошибок WordPress и их решения
// Отключаем сам REST API add_filter(‘rest_enabled’, ‘__return_false’); // Отключаем фильтры REST API remove_action( ‘xmlrpc_rsd_apis’, ‘rest_output_rsd’ ); remove_action( ‘wp_head’, ‘rest_output_link_wp_head’, 10, 0 ); remove_action( ‘template_redirect’, ‘rest_output_link_header’, 11, 0 ); remove_action( ‘auth_cookie_malformed’, ‘rest_cookie_collect_status’ ); remove_action( ‘auth_cookie_expired’, ‘rest_cookie_collect_status’ ); remove_action( ‘auth_cookie_bad_username’, ‘rest_cookie_collect_status’ ); remove_action( ‘auth_cookie_bad_hash’, ‘rest_cookie_collect_status’ ); remove_action( ‘auth_cookie_valid’, ‘rest_cookie_collect_status’ ); remove_filter( ‘rest_authentication_errors’, ‘rest_cookie_check_errors’, 100 ); // Отключаем события REST API remove_action( ‘init’, ‘rest_api_init’ ); remove_action( ‘rest_api_init’, ‘rest_api_default_filters’, 10, 1 ); remove_action( ‘parse_request’, ‘rest_api_loaded’ ); // Отключаем Embeds связанные с REST API remove_action( ‘rest_api_init’, ‘wp_oembed_register_route’ ); remove_filter( ‘rest_pre_serve_request’, ‘_oembed_rest_pre_serve_request’, 10, 4 ); remove_action( ‘wp_head’, ‘wp_oembed_add_discovery_links’ );
Обязательно!
После удаления такого кода или отключения плагина, который отключает события, нужно сделать следующее: зайти в админку во вкладку «Настройки – Постоянные ссылки» и просто нажать на кнопку «Сохранить изменения».
Классический редактор
Для всех, кто привык к старым редакторам и не хочет от них отвыкать, есть специальные плагины. Они возвращаю привычный всем вид. Просто установите и активируйте их.
Classic Editor — Классический редактор постов
Classic Widgets — Классический редактор виджетов
Источник: wordsmall.ru
WordPress: ошибка обновления. Сообщение об ошибке: Ответ не является допустимым ответом JSON.
Устраняем проблему с WP-JSON после обновления WordPress
Как создать блог. Видео Уроки WordPress > WordPress > WordPress: ошибка обновления. Сообщение об ошибке: Ответ не является допустимым ответом JSON.
Ошибка, об устранении которой мы расскажем в этой статье, заключается в следующем. При попытке создать и / или сохранить изменения в записи или странице в WordPress появляется сообщения: “Ошибка обновления. Сообщение об ошибке: Ответ не является допустимым ответом JSON”. Рассмотрим, как это устранить и как продолжить пользоваться сайтом и полноценно наполнять его контентом.
- 1 Перенастройка постоянных ссылок
- 2 Восстановление файла .htaccess
- 3 Выполнение обновления
- 4 Установка классического редактора
- 5 Деактивация всех плагинов и замена темы
- 6 Восстановление из резервной копии
Перенастройка постоянных ссылок
Самое просто, что нужно сделать при появлении ошибки обновления WordPress – это перенастроить постоянные ссылки. Сделайте следующее:
- Перейдите в раздел “Настройки”, подраздел “Постоянные ссылки”.
- Запомните, как у вас сейчас настроены постоянные ссылки. Если сомневаетесь, что сможете запомнить, то сделайте скриншот этой страницы и сохраните.
- Перенастройте постоянные ссылки, например, выбрав вариант “Простые”.
- Сохраните изменения.
- Перенастройте постоянные ссылки снова, сделав настройки как было до этого (как вы запомнили или заскриншотили).
- Сохраните изменения.
После этого попробуйте создать или сохранить изменения в записи и проверить, пропала ли ошибка.
Восстановление файла .htaccess
.htaccess – это небольшой системный файл с несколькими строками кода, который управляет настройками сервера. Если в этом файле будут какие-то некорректные изменения, то это может привести к ошибкам на сайте или полной его неработоспособности. В WordPress ошибка обновления может возникать именно из-за некорректных записей в файле .htaccess.
На официальном сайте WordPress в разделе “Basic WP” находится оригинальный файл .htaccess, который в WordPress является по умолчанию. Скопируйте его содержимое и вставьте в .htaccess своего сайта. На своём сайте этот файл вы найдёте в корневой папке. Его можно открыть в редакторе файлового менеджера на хостинге.
После восстановления .htaccess на оригинальный, проверьте настройку постоянных ссылок в разделе “Настройки”, подразделе “Постоянные ссылки”. Они после этого могут сбиться и прийти к состоянию по умолчанию.
Возможно, у вас в корневой папке сайта файла .htaccess не будет. Например, если вы его случайно удалили. Тогда создайте его. Файл должен иметь строгое имя .htaccess (на самом деле это файл без имени, а после точки написано его расширение). И наполните файл кодом, который даётся на странице WordPress.
Выполнение обновления
Некоторые видят в WordPress ошибку обновления, когда сама CMS, плагины или тема не обновлены. Поэтому проверьте в разделе “Консоль”, подразделе “Оглавление”, выполнены ли все обновления. Если какие-то продукты требуют обновления, то сделайте их.
Установка классического редактора
В одном из обновлений WordPress разработчики сильно изменили редактор. Вместо привычного редактора с панелью управления в верхней части страницы, появился блочный редактор Guttenberg, которые представляет собой конструктор, позволяющий создать страницы любого вида. Guttenberg до сих пор обновляется и улучшается, наделяется новыми функциями.
Некоторые пользователи сразу отказались от редактора Guttenberg и решили остаться на классическом. Другие решили начать осваивать новое и пользуются новым редактором Guttenberg.
Иногда новый редактор Guttenberg вызывает проблемы и ошибки. В основном это связанно с несовместимостью с некоторыми плагинами и темами. Ошибка обновления WordPress с недопустимым ответом JSON также иногда связанна с этим. Поэтому рекомендуется установить классический редактор вместо Guttenberg. Для этого разработчики WordPress создали специальный плагин, который так и называется Classic Editor.
Достаточно установить и активировать плагин и он сразу начинает работать. Редактор после активации плагина становится классическим. И теперь проверьте, пропала ли ошибка обновления WordPress.
Деактивация всех плагинов и замена темы
Это универсальный способ, который помогает диагностировать любую проблему на сайте, в том числе он поможет и при ошибке обновления в WordPress при создании или изменении записи / страницы. Сделайте следующее:
- Сначала деактивируйте все плагины в разделе “Плагины”. Проверьте, есть ли ошибка обновления. Если нет, то делайте шаг 2. Если ошибка осталась, то делайте шаг 4.
- Активируйте плагины по одному. После каждой активации плагина проверяйте наличие ошибки обновления.
- Тот плагин, после активации которого ошибка обновления возобновится, и есть виновный. Удалите его, замените на другой или измените его настройки.
- Если деактивация всех плагинов ошибку не устранила, то активируйте их снова.
- В разделе “Внешний вид” активируйте любую тему.
- Проверьте наличие ошибки обновления. Если она пропала, значит проблема была в теме. Замените тему на другую или измените её настройки. Если ошибка осталась, значит проблема в чём-то другом.
Восстановление из резервной копии
Подойдёт в тех случаях, когда в WordPress ошибка обновления появилась недавно. Тогда легче всего восстановить сайт из резервной копии, воспользовавшись бекапами на хостинге. Восстановите сайт на ту дату, когда проблемы ещё не было. При этом вы потеряете то, что было сделано с даты бекапа до настоящего времени – пропадёт не только причина ошибки обновления, но и полезные действия. Их придётся делать заново.
Источник: wpuroki.ru
Устраняем проблему с WP-JSON после обновления WordPress
Если ваш сайт работает на WordPress, то данная статья будет для вас очень полезна, так как в последних версиях данной CMS есть один небольшой недостаток, и если оставить его без внимания, то в дальнейшем это может привести к тому, что ваш сайт будет постепенно терять позиции в поисковой выдаче.
Данный недостаток связан с новым интерфейсом REST API, и заключается он в том, что на вашем сайте создается новая папка WP-JSON, в которой размещаются страницы с кодом.
На первый взгляд ничего страшного. Однако все эти страницы попадают в поисковую выдачу, и представляют собой вспомогательный код, не содержащий какого-то уникального контента. Как известно, поисковые системы как Яндекс, так и Google очень негативно относятся к подобным мусорным страницам. Причем, со временем этих страниц становится все больше и в конечном итоге, это может привести к тому, что поисковые системы начнут понижать ваш сайт в поисковой выдаче.
К счастью данная проблема решается довольно просто. Однако перед тем как перейти к ее решению, давайте сначала проверим, есть ли она на вашем сайте.
Для того, что бы понять, есть ли данная папка с ненужными страницами на вашем сайте или нет, достаточно к адресу вашего сайт через слэш приписать wp-json.
impuls-web.ru/wp-json
Если вы попадаете на страницу с непонятным кодом – это говорить о том, что на вашем сайте данная проблема есть. Именно вот такие вот страницы засоряют вашу поисковую выдачу.
Помимо этого данный компонент так же может создавать дубли страниц на вашем сайте, которые тоже очень негативно воспринимаются поисковыми системами.
Актуальное решение
- 1. Открываем файл Robots.txt, который должен находится в папке с файлами вашего сайта на хостинге. Найти и открыть его можно при помощи FTP клиента или програмы Notepad++ или аналогов, а так же через файловый менеджер на Вашем хостинге.
- 2. Убедитесь в том, что у вас в этом файле есть такая строка
Disallow : / wp —
Выглядеть это должно так:
Устаревшее решение
Обращаю ваше внимание на то, что данная статья и видео записывались почти 5 лет назад! За это время многое обновилось и изменилось. На сегодняшний день я не рекомендую вам использовать устаревшее решение, так как оно может привести к проблемам в работе некоторых плагинов! Используйте первый вариант решения через файл Robots.txt.
Тем не менее, я все же оставлю описание устаревшего метода, так как вы можете найти его на других сайтах и должны знать что это решение в современных реалиях не подходит!
Итак, для решения данной проблемы можно воспользоваться таким алгоритмом:
- 1. Вставить небольшой фрагмент кода в файл функций вашей темы functions.php. Открыть данный файл вы можете при помощи стандартного редактора WordPress, который находится в разделе «Внешний вид» =>«Редактор».
- 2. Находим здесь файл functions.php он же «Функции темы».
- 3. Далее, мы переходим в самый конец данного файла. А дальше внимание, в идеале файл functions.php должен заканчиваться вот такими символами: ? > Если в вашем файле такие символы есть, то предложенный фрагмент кода вы будете вставлять перед этим вот символом:
Если же в вашем файле функций этих символов нет, то вы просто вставляете в самом конце файла functions.php. Специально дописывать эти символы здесь не нужно!
Перед внесением любых правок в файл функций или любой другой файл темы, не забудьте сделать его резервную копию. То есть, просто, скопируйте данный фрагмент кода куда-нибудь себе в текстовый документ, что бы он у вас сохранился в качестве резервной копии.
Источник: impuls-web.ru
УСТРАНЯЕМ ОШИБКУ WOPRDPRESS: — «REST API ВЫДАЛ НЕОЖИДАННЫЙ РЕЗУЛЬТАТ» ИЛИ «ОТВЕТ НЕ ЯВЛЯЕТСЯ ДОПУСТИМЫМ ОТВЕТОМ JSON». NGINX.
Если вы устанавливали WoprdPress по моей статье « Простая установка WordPress на Ubuntu / Debian c HTTPS (SSL) с помощью Docker Compose и LinuxServer SWAG. » и у вас появилась ошибка «REST API выдал неожиданный результат» во вкладке «Состояние здоровья сайта» или «Ответ не является допустимым ответом JSON» при публикации новой записи или редактировании ранее опубликованной, то вам нужно добавить одну строчку в файл default находящийся по пути /home/ubuntu/config/nginx/site-confs и перезапустить контейнер SWAG (linuxserver/swag) в Portainer .
Об этом, «черным по белому», написано в документации WordPress на этой странице . Но если вы пришли в поисках сюда, значит не читали её, как и я ))
Точно так же, если вы установили WordPress в операционную систему Ubuntu или Ubuntu Server с Nginx, не с помощью с помощью Docker Compose, а другим способом, например стеком LEMP (Linux, Nginx, MySQL, PHP) … , то эту сточку нужно добавить или изменить, но возможно в другом файле конфигурации Nginx.
Итак, если при попытке добавить новую статью или отредактировать старую вы увидите такую ошибку:
Ошибка публикации. Сообщение об ошибке: Ответ не является допустимым ответом JSON.
Кроме того, если перейдёте на экран «Здоровье сайта» (/wp-admin/site-health.php), то увидите надпись:
Запрос к REST API завершился с неожиданным результатом: (404) 404 Not Found
404 Not Found
nginx/1.18.0 .
REST API выдал неожиданный результат
То вам необходимо отредактировать файл конфигурации Nginx — ВашСайт.conf . Находится он (скорее всего) по пути /etc/nginx/sites-enabled/ ВашСайт.conf . Замените в нём стандартные строки:
location / # First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
>
Затем перезапустить сервер Nginx чтобы применить изменения:
nginx -tsudo service nginx restart
После этого проверить, что ошибки исчезли.
Проблема с постоянными ссылками ЧПУ
Изменить адреса ссылок WordPress с такого вида http://сайт.com/?p=123 на такой http://сайт.com/название-публикации/ можно по пути «Настройки» — «Постоянные ссылки» , но иногда после этого возможны проблемы:
« Установил WordPress, ссылки у страниц не были переведены в ЧПУ, а имели стандартный вид ?p=123. Если изменить настройки постоянных ссылок на произвольные (/%postname%/), то страницы становятся недоступны (ошибка 404). «
« На моём сайте WordPress после изменения пункта «Простые» по пути «Настройки» — «Постоянные ссылки» на «Произвольно» или «Название записи « перестали открываться страницы. А именно, при открытии любой из страниц отображается такая ошибка: « Not Found The requested URL /page was not found on this server .»
Если вы столкнулись с похожей проблемой и у вас WordPress + Ubuntu + Nginx, то решение этой проблемы полностью аналогично описанной выше правке файла конфигурации Nginx.
Если проблема не будет решена, то значит у вас другой случай — «гуглите» решение « чпу wordpress .htaccess » (я с таким не сталкивался и описать рабочее решение для этого случая не могу)
Спасибо за внимание!
Источник: dzen.ru