API для добавления материалов

REST API поверх WordPress: создание советов и рецептов, загрузка изображений, работа с категориями и тегами. Ключ доступа выдаётся в админке: Настройки → API сайта.

Авторизация

Два способа:

  1. X-API-Key — ключ из админки, действует от имени редактора.
  2. Application Password — стандартная HTTP Basic-авторизация WordPress.
curl "https://grandma.tgbts.ru/wp-json/grandma/v1/stats"

Эндпоинты

МетодАдресЧто делает
POST/wp-json/grandma/v1/postsСоздать или обновить совет
POST/wp-json/grandma/v1/recipesСоздать или обновить рецепт
POST/wp-json/grandma/v1/bulkПакетно до 100 материалов
POST/wp-json/grandma/v1/mediaЗагрузить изображение по URL
GET/wp-json/grandma/v1/postsСписок советов: per_page, page, search, category
GET/wp-json/grandma/v1/recipesСписок рецептов
GET/wp-json/grandma/v1/categoriesКатегории с количеством материалов
GET/wp-json/grandma/v1/statsСчётчики публикаций

Пример: новый совет

curl -X POST "https://grandma.tgbts.ru/wp-json/grandma/v1/posts" \
  -H "X-API-Key: ВАШ_КЛЮЧ" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Как отмыть чайник от накипи",
    "excerpt": "Простой способ вернуть чайнику чистоту.",
    "content": "<p>Налейте воду, добавьте лимонную кислоту...</p>",
    "categories": ["Уборка и порядок"],
    "tags": ["накипь", "чайник"],
    "image_url": "https://example.com/kettle.jpg",
    "create_terms": true
  }'

Пример: пакетный импорт

POST https://grandma.tgbts.ru/wp-json/grandma/v1/bulk
{
  "type": "recipe",
  "items": [
    {"title": "Сырники", "content": "<p>...</p>", "categories": ["Завтраки"]},
    {"title": "Борщ", "content": "<p>...</p>", "categories": ["Супы и рагу"]}
  ]
}

Поля материала

  • title — обязательный заголовок;
  • content — HTML-содержимое;
  • excerpt, slug, status, date;
  • categories — массив названий или слагов;
  • tags — массив меток;
  • create_terms — создавать отсутствующие категории и метки;
  • image_url / image_path / media_id — обложка;
  • source_url, reading_time — метаданные;
  • id — если нужно обновить существующий материал.

Стандартный REST API

Доступны и штатные маршруты WordPress: https://grandma.tgbts.ru/wp-json/wp/v2/posts, /wp-json/wp/v2/pages, /wp-json/wp/v2/categories, /wp-json/wp/v2/media, а также /wp-json/wp/v2/recipes для рецептов.