Ці маршрути дозволяють отримати/створити/оновити/видалити мітки (теги).
Можливі маршрути (кінцеві точки маршрутів описані нижче):
/wp/v2/tags // працює з усіма мітками
/wp/v2/tags/{ID} // працює із зазначеною замість {ID} міткою Клас контролера: WP_REST_Terms_Controller{}
Схема ресурсуСхема показує всі поля, які є об’єкта: поля об’єкта які поверне запит.
Параметр Контекст Опис id
число view, edit, embed ID терміну (мітки).
Лише для читання. count
число view, edit Кількість записів, що знаходяться в терміні (мітці).
Лише для читання. description
рядок view, edit Опис терміну (мітки). link
рядок, uri view, edit, embed URL терміну (мітки).
Лише для читання. name
рядок view, edit, embed Назва терміна (мітки). slug
рядок view, edit, embed Слаг (ярлик) терміна (мітки) зазвичай створюється з назви. taxonomy
рядок view, edit, embed Назва таксономії.
Лише для читання.
Можливо: category , post_tag , nav_menu , link_category , post_format parent
число view, edit ID батьківського терміну. meta
об’єкт view, edit Мета поля.
Контекст — показує, які поля об’єкта повернутися у відповіді під час створення запиту у вказаному контексті. Наприклад, при оновленні або створенні рубрики повернутися поля, що відповідають контексту edit .
Запит OPTIONS до маршруту поверне повний опис цього маршруту: ендпоінти, їх параметри, схему.
$ curl -X OPTIONS -i http://demo.wp-api.org/wp-json/wp/v2/tags GitHub
{
"namespace": "wp/v2",
"methods": [
"GET",
"POST"
],
"endpoints": [
{
"methods": [
"GET"
],
"args": {
"context": {
"required": false,
"default": "view",
"enum": [
"view",
"embed",
"edit"
],
"description": "Рамки, в яких зроблено запит, визначають поля відповіді.",
"type": "string"
},
"page": {
"required": false,
"default": 1,
"description": "Поточна сторінка колекції.",
"type": "integer"
},
"per_page": {
"required": false,
"default": 10,
"description": "Максимальна кількість об'єктів, що повертається у вибірці.",
"type": "integer"
},
"search": {
"required": false,
"description": "Обмежити результати до відповідних рядків.",
"type": "string"
},
"exclude": {
"required": false,
"default": [],
"description": "Переконатися, що вибірка виключає певні ID.",
"type": "array",
"items": {
"type": "integer"
}
},
"include": {
"required": false,
"default": [],
"description": "Обмежити вибірку до певних ID.",
"type": "array",
"items": {
"type": "integer"
}
},
"offset": {
"required": false,
"description": "Зсув вибірки на певну кількість об'єктів.",
"type": "integer"
},
"Order": {
"required": false,
"default": "asc",
"enum": [
"asc",
"desc"
],
"description": "Упорядкувати сортування атрибуту за зростанням або зменшенням.",
"type": "string"
},
"orderby": {
"required": false,
"default": "name",
"enum": [
"id",
"include",
"name",
"slug",
"include_slugs",
"term_group",
"description",
"count"
],
"description": "Сортувати колекцію за атрибутами елемента.",
"type": "string"
},
"hide_empty": {
"required": false,
"default": false,
"description": "Чи приховувати елементи не призначені жодного запису.",
"type": "boolean"
},
"post": {
"required": false,
"description": "Обмежити вибірку елементами призначеними для певного запису.",
"type": "integer"
},
"slug": {
"required": false,
"description": "Обмежити вибірку елементами з одним або більше спеціальними ярликами.",
"type": "array",
"items": {
"type": "string"
}
}
}
},
{
"methods": [
"POST"
],
"args": {
"description": {
"required": false,
"description": "HTML опис елемента.",
"type": "string"
},
"name": {
"required": true,
"description": "HTML назва елемента.",
"type": "string"
},
"slug": {
"required": false,
"description": "Буквенно-цифровий ідентифікатор елемента унікальний для його типу.",
"type": "string"
},
"meta": {
"required": false,
"description": "Мета поля.",
"type": "object"
}
}
}
],
"Schema": {
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "tag",
"type": "object",
"properties": {
"id": {
"description": "Унікальний ідентифікатор елемента.",
"type": "integer",
"context": [
"view",
"embed",
"edit"
],
"readonly": true
},
"count": {
"description": "Кількість опублікованих записів елемента.",
"type": "integer",
"context": [
"view",
"edit"
],
"readonly": true
},
"description": {
"description": "HTML опис елемента.",
"type": "string",
"context": [
"view",
"edit"
]
},
"link": {
"description": "URL елемент.",
"type": "string",
"format": "uri",
"context": [
"view",
"embed",
"edit"
],
"readonly": true
},
"name": {
"description": "HTML назва елемента.",
"type": "string",
"context": [
"view",
"embed",
"edit"
],
"required": true
},
"slug": {
"description": "Буквенно-цифровий ідентифікатор елемента унікальний для його типу.",
"type": "string",
"context": [
"view",
"embed",
"edit"
]
},
"taxonomy": {
"description": "Тип атрибуції елемента.",
"type": "string",
"enum": [
"категорії",
"post_tag",
"nav_menu",
"link_category",
"post_format"
],
"context": [
"view",
"embed",
"edit"
],
"readonly": true
},
"meta": {
"description": "Мета поля.",
"type": "object",
"context": [
"view",
"edit"
],
"properties": []
}
}
},
"_links": {
"self": "http://wptest.ru/wp-json/wp/v2/tags"
}
}
Список тегівОтримує список міток, на кшталт get_tags()
Вид запиту GET /wp/v2/tags Параметри запиту
context
Область, у якій виконується запит; визначає поля присутні у відповіді.Можливо:
view, embed, edit
За замовчуванням: view
page
Поточна сторінка пагінації.За замовчуванням: 1
per_page
Максимальна кількість елементів, що повертаються в результаті.Типово: 10
search
Обмежте результати тими, які відповідають рядку.
exclude
Виключає позначки за ID.
include
Показує лише вказані тут мітки. Вказується ID.
orderby
Яким полем сортувати?Можливо:
id ,
include ,
name ,
slug ,
term_group ,
description ,
count
Типово: name
order
Як сортувати?Можливо:
asc, desc
За замовчуванням: asc
hide_empty
Чи сховати порожні мітки (де немає постів)?
parent
ID батьківської мітки, дітей яких потрібно отримати.
post
ID посту, мітки якого потрібно отримати.
slug
Вкажіть слаги міток, які потрібно отримати. Приклад запиту http://demo.wp-api.org/wp-json/wp/v2/tags Отримаємо мітки посту 1
http://demo.wp-api.org/wp-json/wp/v2/tags?post=1
Створення міткиАлгоритм схожий на роботу функції wp_insert_term()
Вид запиту Доступ: потрібна авторизація
POST /wp/v2/tags Параметри запиту
name
(обов’язковий)
Назва терміна (мітки).
description
Опис терміну (мітки).
slug
Слаг (ярлик) терміна (мітки) зазвичай створюється з назви.
parent
ID батьківського терміну.
meta
Мета поля. Приклад запиту: POST http://example.com/wp-json/wp/v2/tags?name=Моя мітка Відповідь
{
"id": 6,
"count": 0,
"description": "",
"link": "http://example.com/tag/moya-metka/",
"name": "Моя метока",
"slug": "moya-metka",
"taxonomy": "post_tag",
"parent": 0,
"meta": [],
"_links": {
"self": [
{
"href": "http://example.com/wp-json/wp/v2/tags/6"
}
],
"collection": [
{
"href": "http://example.com/wp-json/wp/v2/tags"
}
],
"about": [
{
"href": "http://example.com/wp-json/wp/v2/taxonomies/post_tag"
}
],
"wp:post_type": [
{
"href": "http://example.com/wp-json/wp/v2/posts?tags=6"
}
],
"curies": [
{
"name": "wp",
"href": "https://api.w.org/{rel}",
"templated": true
}
]
}
} Запит OPTIONS до маршруту поверне повний опис цього маршруту: ендпоінти, їх параметри, схему.
$ curl -X OPTIONS -i http://demo.wp-api.org/wp-json/wp/v2/tags/1 GitHub
{
"namespace": "wp/v2",
"methods": [
"GET",
"POST",
"PUT",
"PATCH",
"DELETE"
],
"endpoints": [
{
"methods": [
"GET"
],
"args": {
"id": {
"required": false,
"description": "Унікальний ідентифікатор елемента.",
"type": "integer"
},
"context": {
"required": false,
"default": "view",
"enum": [
"view",
"embed",
"edit"
],
"description": "Рамки, в яких зроблено запит, визначають поля відповіді.",
"type": "string"
}
}
},
{
"methods": [
"POST",
"PUT",
"PATCH"
],
"args": {
"id": {
"required": false,
"description": "Унікальний ідентифікатор елемента.",
"type": "integer"
},
"description": {
"required": false,
"description": "HTML опис елемента.",
"type": "string"
},
"name": {
"required": false,
"description": "HTML назва елемента.",
"type": "string"
},
"slug": {
"required": false,
"description": "Буквенно-цифровий ідентифікатор елемента унікальний для його типу.",
"type": "string"
},
"meta": {
"required": false,
"description": "Мета поля.",
"type": "object"
}
}
},
{
"methods": [
"DELETE"
],
"args": {
"id": {
"required": false,
"description": "Унікальний ідентифікатор елемента.",
"type": "integer"
},
"force": {
"required": false,
"default": false,
"description": "Повинно бути істинно, тому що елементи не підтримують переміщення в кошик.",
"type": "boolean"
}
}
}
],
"Schema": {
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "tag",
"type": "object",
"properties": {
"id": {
"description": "Унікальний ідентифікатор елемента.",
"type": "integer",
"context": [
"view",
"embed",
"edit"
],
"readonly": true
},
"count": {
"description": "Кількість опублікованих записів елемента.",
"type": "integer",
"context": [
"view",
"edit"
],
"readonly": true
},
"description": {
"description": "HTML опис елемента.",
"type": "string",
"context": [
"view",
"edit"
]
},
"link": {
"description": "URL елемент.",
"type": "string",
"format": "uri",
"context": [
"view",
"embed",
"edit"
],
"readonly": true
},
"name": {
"description": "HTML назва елемента.",
"type": "string",
"context": [
"view",
"embed",
"edit"
],
"required": true
},
"slug": {
"description": "Буквенно-цифровий ідентифікатор елемента унікальний для його типу.",
"type": "string",
"context": [
"view",
"embed",
"edit"
]
},
"taxonomy": {
"description": "Тип атрибуції елемента.",
"type": "string",
"enum": [
"категорії",
"post_tag",
"nav_menu",
"link_category",
"post_format"
],
"context": [
"view",
"embed",
"edit"
],
"readonly": true
},
"meta": {
"description": "Мета поля.",
"type": "object",
"context": [
"view",
"edit"
],
"properties": []
}
}
}
}
Отримання міткиАлгоритм схожий на роботу функції get_tag() .
Вид запиту GET /wp/v2/tags/{id} Параметри запиту
id
(число)
Ідентифікатор терміна.
context
(рядок)
Область, у якій виконується запит; визначає поля, присутні у відповіді.Можливо:
view, embed, edit
За замовчуванням: view
Приклад запиту Отримаємо мітку 25
http://demo.wp-api.org/wp-json/wp/v2/tags/25
Оновлення міткиАлгоритм схожий на роботу функції wp_update_term() .
Вид запиту Доступ: потрібна авторизація
POST /wp/v2/tags/{id} Параметри запиту
id
(обов’язковий)
ID терміну (мітки).
name
Назва терміна (мітки).
description
Опис терміну (мітки).
slug
Слаг (ярлик) терміна (мітки) зазвичай створюється з назви.
parent
ID батьківського терміну.
meta
Мета поля. Приклад запиту $ curl -X POST http://demo.wp-api.org/wp-json/wp/v2/tags/25 -d '{"name":"Нове ім'я"}' Або
POST http://example.com/wp-json/wp/v2/tags/6?name=Моя мітка&slug=my tag Відповідь
{
"id": 6,
"count": 0,
"description": "",
"link": "http://example.com/tag/moya-metka/",
"name": "Моя мітка",
"slug": "my-tag",
"taxonomy": "post_tag",
"parent": 0,
"meta": [],
"_links": {
"self": [
{
"href": "http://example.com/wp-json/wp/v2/tags/6"
}
],
"collection": [
{
"href": "http://example.com/wp-json/wp/v2/tags"
}
],
"about": [
{
"href": "http://example.com/wp-json/wp/v2/taxonomies/post_tag"
}
],
"wp:post_type": [
{
"href": "http://example.com/wp-json/wp/v2/posts?tags=6"
}
],
"curies": [
{
"name": "wp",
"href": "https://api.w.org/{rel}",
"templated": true
}
]
}
}
Видалення міткиАлгоритм схожий на роботу функції wp_delete_term()
Вид запиту Доступ: потрібна авторизація
DELETE /wp/v2/tags/{id} Параметри запиту
id
(обов’язковий)
ID терміну (мітки).
force
Завжди має бути true, оскільки терміни не підтримують кошик. Приклад запиту $ curl -X DELETE http://example.com/wp-json/wp/v2/tags/6?force=true Відповідь
{
"deleted": true,
"previous": {
"id": 6,
"count": 0,
"description": "",
"link": "http://example.com/tag/moya-metka/",
"name": "Моя мітка",
"slug": "moya-metka",
"taxonomy": "post_tag",
"parent": 0,
"meta": []
}
} Відповідь якщо такої мітки немає
{
"code": "rest_term_invalid",
"message": "Елемент не існує.",
"data": {
"status": 404
}
}