Коротко: REST API в WordPress включён по умолчанию. Его отключают плагины или фильтры темы. Разберём, как проверить состояние и включить обратно.
Что такое REST API
Это «дверь» сайта для программ. Данные отдаются по адресам вида:
https://ваш-сайт.ru/wp-json/
https://ваш-сайт.ru/wp-json/wp/v2/postsЕсли открыть их в браузере, видно JSON-данные. Это признак, что API работает.
Вкладки: проверка, включение, причины отключения
- Откройте
/wp-json/в браузере. - Если видите JSON — API работает.
- Если 404 или пусто — отключён плагином/фильтром/сервером.
- Отключите плагины безопасности/«Disable REST API» по одному.
- Проверьте
functions.phpна фильтрыrest_api_init. - Проверьте
.htaccessи конфиг сервера (запретwp-json). - Очистите кэш и проверьте снова.
Иногда API отключают «для безопасности», но чаще это лишнее: правильнее ограничить доступ, а не выключать всё. Отключение ломает редактор и многие плагины.
Практика: три задачи
1. Диагностика «редактор не открывается»
- Проверьте
/wp-json/. - Если пусто — ищите блокирующий плагин.
- Смотрите консоль браузера: там будут ошибки запросов к
/wp-json/wp/v2/....
2. Точечно ограничить доступ, не выключая API
// пример: запретить анонимный доступ к списку пользователей
add_filter('rest_endpoints', function ($endpoints) {
if (isset($endpoints['/wp/v2/users'])) {
unset($endpoints['/wp/v2/users']);
}
return $endpoints;
});3. Проверить, не блокирует ли сервер
curl -I https://ваш-сайт.ru/wp-json/Ответ 200 — хорошо; 403/404 — блокировка на уровне сервера/.htaccess.
Частые ошибки: причина → решение
| Симптом | Причина | Решение |
|---|---|---|
| Не открывается Gutenberg | API отключён | включить REST |
404 на /wp-json/ |
плагин или правила сервера | найти и убрать блокировку |
| Работает локально, но не на сервере | ограничения хостинга | проверить .htaccess/конфиг |
| Часть запросов падает | кэш или CORS | сбросить кэш, проверить заголовки |
Проверьте себя
/wp-json/?
Вопросы и ответы
Нет. Он не отдаёт приватные данные без авторизации. Ограничивайте отдельные эндпоинты, если нужно.
Gutenberg использует REST API. При его отключении редактор перестаёт работать.
Убрать блокирующий плагин/фильтр/правило сервера. Проще всего отключать плагины по одному и проверять /wp-json/.
Конкретный адрес API для данных, например /wp/v2/posts — список записей.
Итоги
- API включён «из коробки» — проверяйте
/wp-json/. - Включают, убирая блокирующие плагины/фильтры.
- Полное отключение API ломает редактор и интеграции.
Комментарии
Пока комментариев нет — будьте первым, кто поделится мнением.