REST API в WordPress: 4 ошибки, из-за которых ломается тема и интеграции
REST API нужен не только для приложений и SPA. В теме он часто отвечает за автосохранение, поиск, фильтры, подгрузку блоков и связку с внешними сервисами. Если эндпоинт сделан неаккуратно, проблема появляется не в одном месте, а сразу в шаблонах, JS и админке.
Частые ошибки:
• жёстко хардкодить URL вместо использования home_url() и wp_json_encode()
• отдавать данные без проверки прав через permission_callback
• смешивать логику выборки и формат ответа в одном callback
• забывать про sanitize и validate для входных параметров
Отдельно следите за структурой ответа. Тема должна получать только то, что ей нужно: id, title, permalink, нужные поля ACF или мета. Лишние данные увеличивают вес ответа и усложняют поддержку. Для фронта удобнее сразу договориться о формате: массив записей, status, error, meta.
Если endpoint нужен только теме, прячьте детали в отдельный класс или файл, а в шаблонах работайте через один JS-слой. Тогда при смене разметки вы не перепишете половину проекта. И не забывайте обрабатывать ошибки: пустой ответ, 403, битый JSON и таймаут должны показывать понятное состояние, а не сломанный блок.
Хороший REST API в теме — это не «дополнительная фича», а контракт между PHP, JS и редактором. Чем раньше вы зафиксируете формат и права доступа, тем меньше будет сюрпризов на интеграции.
Разработка тем WordPress
@wp_dev_deep_dive_ww
REST API в WordPress: 4 ошибки, из-за которых ломается тема и интеграции
Этот пост опубликован в Telegram-канале Разработка тем WordPress. Подписаться можно по ссылке: @wp_dev_deep_dive_ww.