Записи (posts)

Ці маршрути дозволяють отримати/створити/оновити/видалити записи або окремий запис (пост).

Можливі маршрути (кінцеві точки маршрутів описані нижче):

/wp/v2/posts // працює з усіма постами
/wp/v2/posts/{ID} // працює із зазначеним замість {ID} постом

Клас контролера: WP_REST_Posts_Controller{}




Схема ресурсу

Схема показує всі поля, які існують для запису об’єкта: поля об’єкта, які повернуть запит.

ПараметрКонтекстОпис
date
рядок
view, edit, embedДата публікації запису у часовому поясі сайту.
date_gmt
рядок/datetime
view, editДата публікації запису, як GMT.
guid
об’єкт
view, editГлобальний унікальний ідентифікатор запису.
Лише для читання.
id
число
view, edit, embedУнікальний ідентифікатор запису.
Лише для читання.
link
рядок
view, edit, embedПосилання на запис.
Лише для читання.
modified
рядок
view, editДата останньої зміни запису у часовому поясі сайту.
Лише для читання.
modified_gmt
рядок
view, editДата останньої зміни запису, як GMT.
Лише для читання.
slug
рядок
view, edit, embedАлфавітно-цифровий ідентифікатор запису унікальний для його типу. Ще називають ярликом.
status
рядок
view, editСтатус запису.
Може бути publish , future , draft , pending , private .
type
рядок
view, edit, embedТип запису.
Лише для читання.
password
рядок
editПароль для захисту доступу до контенту та цитати (уривку).
title
об’єкт
view, edit, embedЗаголовок запису.
content
об’єкт
view, editКонтент запису.
author
число
view, edit, embedІдентифікатор (ID) автора запису
excerpt
об’єкт
view, edit, embedЦитата (уривок) запису.
featured_media
число
view, edit, embedІдентифікатор (ID) мініатюри (зображення) запису.
comment_status
рядок
view, editЧи можна залишати коментарі до запису чи ні.
Може бути open або closed .
ping_status
рядок
view, editСтатус пінгів/трекбеків може бути open або closed .
format
рядок
view, editФормат запису.
Можливо: standard , aside , chat , gallery , link , image , quote , status , video , audio .
meta
масив
view, editЗначення метаполів.
Масив об’єктів.
sticky
true/false
view, editЧи є запис липким чи ні.
template
рядок
view, editФайл теми, який використовується для відображення запису.
categories
масив
view, editМасив із ID рубрик, до яких належить запис.
tags
масив
view, editМасив із ID міток (тегів), до яких належить запис.




wp/v2/posts

Запит OPTIONS до маршруту поверне повний опис цього маршруту: ендпоінти, їх параметри, схему.

$ curl -X OPTIONS -i http://demo.wp-api.org/wp-json/wp/v2/posts

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"
				},
				"password": {
					"required": false,
					"description": "Пароль для запису, якщо він захищений паролем.",
					"type": "string"
				}
			}
		},
		{
			"methods": [
				"POST",
				"PUT",
				"PATCH"
			],
			"args": {
				"id": {
					"required": false,
					"description": "Унікальний ідентифікатор об'єкта.",
					"type": "integer"
				},
				"date": {
					"required": false,
					"description": "Дата публікації об'єкта за тимчасовою зоною сайту.",
					"type": "string"
				},
				"date_gmt": {
					"required": false,
					"description": "Час публікації об'єкта, за GMT.",
					"type": "string"
				},
				"slug": {
					"required": false,
					"description": "Буквенно-цифровий ідентифікатор для об'єкта унікальний для його типу.",
					"type": "string"
				},
				"status": {
					"required": false,
					"enum": [
						"Publish",
						"Future",
						"draft",
						"pending",
						"private"
					],
					"description": "Іменований статус для об'єкта.",
					"type": "string"
				},
				"password": {
					"required": false,
					"description": "Пароль для захисту змісту та уривка.",
					"type": "string"
				},
				"title": {
					"required": false,
					"description": "Назва для об'єкта.",
					"type": "object"
				},
				"content": {
					"required": false,
					"description": "Вміст об'єкта.",
					"type": "object"
				},
				"author": {
					"required": false,
					"description": "ID автора об'єкта.",
					"type": "integer"
				},
				"excerpt": {
					"required": false,
					"description": "Уривок об'єкта.",
					"type": "object"
				},
				"featured_media": {
					"required": false,
					"description": "ID вибраного медіа для об'єкта.",
					"type": "integer"
				},
				"comment_status": {
					"required": false,
					"enum": [
						"open",
						"closed"
					],
					"description": "Чи відкриті коментарі для об'єкта.",
					"type": "string"
				},
				"ping_status": {
					"required": false,
					"enum": [
						"open",
						"closed"
					],
					"description": "Чи приймає об'єкт сповіщення.",
					"type": "string"
				},
				"format": {
					"required": false,
					"enum": [
						"standard",
						"aside",
						"chat",
						"gallery",
						"link",
						"image",
						"quote",
						"status",
						"video",
						"audio"
					],
					"description": "Формат для об'єкта.",
					"type": "string"
				},
				"meta": {
					"required": false,
					"description": "Мета поля.",
					"type": "object"
				},
				"sticky": {
					"required": false,
					"description": "Вважати об'єкт приліпленим чи ні.",
					"type": "boolean"
				},
				"template": {
					"required": false,
					"description": "Файл теми, який використовується для показу об'єкта.",
					"type": "string"
				},
				"categories": {
					"required": false,
					"description": "Елементи призначені об'єкту в таксономії категорії.",
					"type": "array",
					"items": {
						"type": "integer"
					}
				},
				"tags": {
					"required": false,
					"description": "Елементи призначені об'єкту в таксономії post_tag.",
					"type": "array",
					"items": {
						"type": "integer"
					}
				}
			}
		},
		{
			"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": "post",
		"type": "object",
		"properties": {
			"date": {
				"description": "Дата публікації об'єкта за тимчасовою зоною сайту.",
				"type": "string",
				"format": "date-time",
				"context": [
					"view",
					"edit",
					"embed"
				]
			},
			"date_gmt": {
				"description": "Час публікації об'єкта, за GMT.",
				"type": "string",
				"format": "date-time",
				"context": [
					"view",
					"edit"
				]
			},
			"guid": {
				"description": "Глобальний унікальний ідентифікатор об'єкта.",
				"type": "object",
				"context": [
					"view",
					"edit"
				],
				"readonly": true,
				"properties": {
					"raw": {
						"description": "GUID для об'єкта, як він існує в базі даних.",
						"type": "string",
						"context": [
							"edit"
						],
						"readonly": true
					},
					"rendered": {
						"description": "GUID для об'єкта, перетворений для показу.",
						"type": "string",
						"context": [
							"view",
							"edit"
						],
						"readonly": true
					}
				}
			},
			"id": {
				"description": "Унікальний ідентифікатор об'єкта.",
				"type": "integer",
				"context": [
					"view",
					"edit",
					"embed"
				],
				"readonly": true
			},
			"link": {
				"description": "URL об'єкта.",
				"type": "string",
				"format": "uri",
				"context": [
					"view",
					"edit",
					"embed"
				],
				"readonly": true
			},
			"modified": {
				"description": "Дата останньої зміни об'єкта за тимчасовою зоною сайту.",
				"type": "string",
				"format": "date-time",
				"context": [
					"view",
					"edit"
				],
				"readonly": true
			},
			"modified_gmt": {
				"description": "Дата останньої зміни об'єкта в GMT.",
				"type": "string",
				"format": "date-time",
				"context": [
					"view",
					"edit"
				],
				"readonly": true
			},
			"slug": {
				"description": "Буквенно-цифровий ідентифікатор для об'єкта унікальний для його типу.",
				"type": "string",
				"context": [
					"view",
					"edit",
					"embed"
				]
			},
			"status": {
				"description": "Іменований статус для об'єкта.",
				"type": "string",
				"enum": [
					"Publish",
					"Future",
					"draft",
					"pending",
					"private"
				],
				"context": [
					"view",
					"edit"
				]
			},
			"type": {
				"description": "Тип запису для об'єкта.",
				"type": "string",
				"context": [
					"view",
					"edit",
					"embed"
				],
				"readonly": true
			},
			"password": {
				"description": "Пароль для захисту змісту та уривка.",
				"type": "string",
				"context": [
					"edit"
				]
			},
			"title": {
				"description": "Назва для об'єкта.",
				"type": "object",
				"context": [
					"view",
					"edit",
					"embed"
				],
				"properties": {
					"raw": {
						"description": "Назва об'єкта як вона існує в базі даних.",
						"type": "string",
						"context": [
							"edit"
						]
					},
					"rendered": {
						"description": "HTML назва об'єкта, перетворена для показу.",
						"type": "string",
						"context": [
							"view",
							"edit",
							"embed"
						],
						"readonly": true
					}
				}
			},
			"content": {
				"description": "Вміст об'єкта.",
				"type": "object",
				"context": [
					"view",
					"edit"
				],
				"properties": {
					"raw": {
						"description": "Вміст об'єкта, як він існує в базі даних.",
						"type": "string",
						"context": [
							"edit"
						]
					},
					"rendered": {
						"description": "HTML вміст об'єкта перетворений для показу.",
						"type": "string",
						"context": [
							"view",
							"edit"
						],
						"readonly": true
					},
					"protected": {
						"description": "Чи захищено вміст паролем.",
						"type": "boolean",
						"context": [
							"view",
							"edit",
							"embed"
						],
						"readonly": true
					}
				}
			},
			"author": {
				"description": "ID автора об'єкта.",
				"type": "integer",
				"context": [
					"view",
					"edit",
					"embed"
				]
			},
			"excerpt": {
				"description": "Уривок об'єкта.",
				"type": "object",
				"context": [
					"view",
					"edit",
					"embed"
				],
				"properties": {
					"raw": {
						"description": "Уривок об'єкта як він існує в базі даних.",
						"type": "string",
						"context": [
							"edit"
						]
					},
					"rendered": {
						"description": "HTML уривок об'єкта, перетворений для показу.",
						"type": "string",
						"context": [
							"view",
							"edit",
							"embed"
						],
						"readonly": true
					},
					"protected": {
						"description": "Чи захищати паролем уривок.",
						"type": "boolean",
						"context": [
							"view",
							"edit",
							"embed"
						],
						"readonly": true
					}
				}
			},
			"featured_media": {
				"description": "ID вибраного медіа для об'єкта.",
				"type": "integer",
				"context": [
					"view",
					"edit",
					"embed"
				]
			},
			"comment_status": {
				"description": "Чи відкриті коментарі для об'єкта.",
				"type": "string",
				"enum": [
					"open",
					"closed"
				],
				"context": [
					"view",
					"edit"
				]
			},
			"ping_status": {
				"description": "Чи приймає об'єкт сповіщення.",
				"type": "string",
				"enum": [
					"open",
					"closed"
				],
				"context": [
					"view",
					"edit"
				]
			},
			"format": {
				"description": "Формат для об'єкта.",
				"type": "string",
				"enum": [
					"standard",
					"aside",
					"chat",
					"gallery",
					"link",
					"image",
					"quote",
					"status",
					"video",
					"audio"
				],
				"context": [
					"view",
					"edit"
				]
			},
			"meta": {
				"description": "Мета поля.",
				"type": "object",
				"context": [
					"view",
					"edit"
				],
				"properties": []
			},
			"sticky": {
				"description": "Вважати об'єкт приліпленим чи ні.",
				"type": "boolean",
				"context": [
					"view",
					"edit"
				]
			},
			"template": {
				"description": "Файл теми, який використовується для показу об'єкта.",
				"type": "string",
				"context": [
					"view",
					"edit"
				]
			},
			"categories": {
				"description": "Елементи призначені об'єкту в таксономії категорії.",
				"type": "array",
				"items": {
					"type": "integer"
				},
				"context": [
					"view",
					"edit"
				]
			},
			"tags": {
				"description": "Елементи призначені об'єкту в таксономії post_tag.",
				"type": "array",
				"items": {
					"type": "integer"
				},
				"context": [
					"view",
					"edit"
				]
			}
		},
		"links": [
			{
				"rel": "https://api.w.org/action-publish",
				"title": "Поточний користувач може опублікувати цей запис.",
				"href": "http://wptest.ru/wp-json/wp/v2/posts/{id}",
				"targetSchema": {
					"type": "object",
					"properties": {
						"status": {
							"type": "string",
							"enum": [
								"Publish",
								"future"
							]
						}
					}
				}
			},
			{
				"rel": "https://api.w.org/action-sticky",
				"title": "Поточний користувач може зробити цей запис прикріпленим.",
				"href": "http://wptest.ru/wp-json/wp/v2/posts/{id}",
				"targetSchema": {
					"type": "object",
					"properties": {
						"sticky": {
							"type": "boolean"
						}
					}
				}
			},
			{
				"rel": "https://api.w.org/action-assign-author",
				"title": "Поточний користувач може змінити автора для цього запису.",
				"href": "http://wptest.ru/wp-json/wp/v2/posts/{id}",
				"targetSchema": {
					"type": "object",
					"properties": {
						"author": {
							"type": "integer"
						}
					}
				}
			},
			{
				"rel": "https://api.w.org/action-assign-categories",
				"title": "Поточний користувач може призначати елементи в таксономії категорії.",
				"href": "http://wptest.ru/wp-json/wp/v2/posts/{id}",
				"targetSchema": {
					"type": "object",
					"properties": {
						"categories": {
							"type": "array",
							"items": {
								"type": "integer"
							}
						}
					}
				}
			},
			{
				"rel": "https://api.w.org/action-create-categories",
				"title": "Поточний користувач може створювати елементи в таксономії категорії.",
				"href": "http://wptest.ru/wp-json/wp/v2/posts/{id}",
				"targetSchema": {
					"type": "object",
					"properties": {
						"categories": {
							"type": "array",
							"items": {
								"type": "integer"
							}
						}
					}
				}
			},
			{
				"rel": "https://api.w.org/action-assign-tags",
				"title": "Поточний користувач може призначати елементи в таксономії post_tag.",
				"href": "http://wptest.ru/wp-json/wp/v2/posts/{id}",
				"targetSchema": {
					"type": "object",
					"properties": {
						"tags": {
							"type": "array",
							"items": {
								"type": "integer"
							}
						}
					}
				}
			},
			{
				"rel": "https://api.w.org/action-create-tags",
				"title": "Поточний користувач може створювати елементи в таксономії post_tag.",
				"href": "http://wptest.ru/wp-json/wp/v2/posts/{id}",
				"targetSchema": {
					"type": "object",
					"properties": {
						"tags": {
							"type": "array",
							"items": {
								"type": "integer"
							}
						}
					}
				}
			}
		]
	}
}




Список записів

За один запит можна отримати колекцію із записів з тих чи інших умов. Алгоритм схожий з роботою класу WP_Query та функцій на його основі.

Вид запиту

Доступ: публічний

GET /wp/v2/posts

Параметри запиту

context
Область, у якій виконується запит; визначає поля, присутні у відповіді. Можливо
view ,
embed ,
edit .

Типово: view

page
Сторінка колекції (пагінації).

За замовчуванням: 1

per_page
Максимальна кількість записів у результуючому наборі.

За замовчуванням: 10 (від 1 до 100 включно)

search
Обмежити відповідь за записами рядком (пошуковою фразою).
after
Обмежити відповідь на записи, опубліковані після заданої дати, що відповідає ISO8601.
before
Обмежити відповідь на записи, опубліковані до заданої дати, що відповідає ISO8601.
author
Вказує записи яких авторів треба повернути.
author_exclude
Зазначає записи яких авторів не треба повертати.
exclude
Виключає з набору запису з їхнього ID.
include
Включає запис записів за їх ID. У наборі будуть лише ті записи, ID яких були вказані.
offset
Усунення (відступ) набору результатів на вказане число.

За замовчуванням: 1

order
Сортування записів у вибірці. Може бути
asc або
desc .

За замовчуванням: desc

orderby
Сортування записів у вибірці за атрибутами. Можливо
author ,
date ,
id ,
include ,
modified ,
parent ,
relevance ,
slug ,
title .

Типово: date

slug
Обмеження вибірки за вказаним одним ярликом запису або декільком.
status
Обмеження вибірки за одним статусом чи декільком.

Типово: publish

categories
Обмеження вибірки за вказаною категорією (рубрикою) або рубриками.
categories_exclude:
Виключає із вибірки записи, що належать зазначеній категорії (рубриці) або рубрикам.
tags
Обмеження вибірки за вказаною міткою (тегом) або мітками.
tags_exclude:
Виключає із вибірки записи, що належать зазначеній мітці (тегу) або міткам.
sticky
Вибірка складатиметься лише з “липких” записів.

Приклад запиту

Посилання робітники можна відкрити в браузері і подивитися результат.

1) Запит отримання масиву всіх записів:

https://demo.wp-api.org/wp-json/wp/v2/posts/

Повернеться масив об’єктів, де кожен об’єкт запису схожий на те, що описаний у пункті “Отримати запис”:

[
	{
	... дані запису <id> ...
	},
	{
	... дані запису <id> ...
	},
	{
	... дані запису <id> ...
	}
]

2) Поверне записи, які мають автор з ID=1

https://demo.wp-api.org/wp-json/wp/v2/posts/?author=1

3) Поверне записи, які мають автор з ID=1 і які належать рубриці з ID=11

https://demo.wp-api.org/wp-json/wp/v2/posts/?author=1&categories=11




Створення запису

Алгоритм схожий на роботу функції wp_insert_post() .

Вид запиту

Доступ: потрібна авторизація

POST /wp/v2/posts

Параметри запиту

date
(рядок)
Дата публікації запису у часовому поясі сайту.
date_gmt
(рядок/datetime)
Дата публікації запису, як GMT.
slug
(рядок)
Алфавітно-цифровий ідентифікатор запису унікальний для його типу. Ще називають ярликом.
status
(рядок)
Статус запису. Може бути
publish ,
future ,
draft ,
pending ,
private .
password
(рядок)
Пароль для захисту доступу до контенту та цитати (уривку).
title
(об’єкт)
Заголовок запису.
content
(об’єкт)
Контент запису.
author
(число)
Ідентифікатор автора запису.
excerpt
(об’єкт)
Цитата (уривок) запису.
featured_media
(число)
Ідентифікатор (ID) мініатюри (зображення) запису.
comment_status
(рядок)
Чи можна залишати коментарі до запису чи ні. Може бути
open або
closed .
ping_status
(рядок)
Статус пінгів/трекбеків може бути
open або
closed .
format
(рядок)
Статус запису. Можливо:
standard ,
aside ,
chat ,
gallery ,
link ,
image ,
quote ,
status ,
video ,
audio .
meta
(масив)
Значення метаполів. Масив об’єктів.
sticky
(логічний)
Чи є запис липким чи ні.
template
(рядок)
Файл теми, який використовується для відображення запису.
categories
(масив)
Масив із ID рубрик (категорій), до яких належить запис.
tags
(масив)
Масив із ID міток (тегів), до яких належить запис.

Приклад запиту

POST http://example.com/wp-json/wp/v2/posts/?title=Заголовок&slug=my-post&status=publish




wp/v2/posts/{id}

Запит OPTIONS до маршруту поверне повний опис цього маршруту: ендпоінти, їх параметри, схему.

$ curl -X OPTIONS -i http://demo.wp-api.org/wp-json/wp/v2/posts/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"
                },
                "password": {
                    "required": false,
                    "description": "Пароль для запису, якщо він захищений паролем.",
                    "type": "string"
                }
            }
        },
        {
            "methods": [
                "POST",
                "PUT",
                "PATCH"
            ],
            "args": {
                "id": {
                    "required": false,
                    "description": "Унікальний ідентифікатор об'єкта.",
                    "type": "integer"
                },
                "date": {
                    "required": false,
                    "description": "Дата публікації об'єкта за тимчасовою зоною сайту.",
                    "type": "string"
                },
                "date_gmt": {
                    "required": false,
                    "description": "Час публікації об'єкта, за GMT.",
                    "type": "string"
                },
                "slug": {
                    "required": false,
                    "description": "Буквенно-цифровий ідентифікатор для об'єкта унікальний для його типу.",
                    "type": "string"
                },
                "status": {
                    "required": false,
                    "enum": [
                        "Publish",
                        "Future",
                        "draft",
                        "pending",
                        "private"
                    ],
                    "description": "Іменований статус для об'єкта.",
                    "type": "string"
                },
                "password": {
                    "required": false,
                    "description": "Пароль для захисту змісту та уривка.",
                    "type": "string"
                },
                "title": {
                    "required": false,
                    "description": "Назва для об'єкта.",
                    "type": "object"
                },
                "content": {
                    "required": false,
                    "description": "Вміст об'єкта.",
                    "type": "object"
                },
                "author": {
                    "required": false,
                    "description": "ID автора об'єкта.",
                    "type": "integer"
                },
                "excerpt": {
                    "required": false,
                    "description": "Уривок об'єкта.",
                    "type": "object"
                },
                "featured_media": {
                    "required": false,
                    "description": "ID вибраного медіа для об'єкта.",
                    "type": "integer"
                },
                "comment_status": {
                    "required": false,
                    "enum": [
                        "open",
                        "closed"
                    ],
                    "description": "Чи відкриті коментарі для об'єкта.",
                    "type": "string"
                },
                "ping_status": {
                    "required": false,
                    "enum": [
                        "open",
                        "closed"
                    ],
                    "description": "Чи приймає об'єкт сповіщення.",
                    "type": "string"
                },
                "format": {
                    "required": false,
                    "enum": [
                        "standard",
                        "aside",
                        "chat",
                        "gallery",
                        "link",
                        "image",
                        "quote",
                        "status",
                        "video",
                        "audio"
                    ],
                    "description": "Формат для об'єкта.",
                    "type": "string"
                },
                "meta": {
                    "required": false,
                    "description": "Мета поля.",
                    "type": "object"
                },
                "sticky": {
                    "required": false,
                    "description": "Вважати об'єкт приліпленим чи ні.",
                    "type": "boolean"
                },
                "template": {
                    "required": false,
                    "description": "Файл теми, який використовується для показу об'єкта.",
                    "type": "string"
                },
                "categories": {
                    "required": false,
                    "description": "Елементи призначені об'єкту в таксономії категорії.",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "tags": {
                    "required": false,
                    "description": "Елементи призначені об'єкту в таксономії post_tag.",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        {
            "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": "post",
        "type": "object",
        "properties": {
            "date": {
                "description": "Дата публікації об'єкта за тимчасовою зоною сайту.",
                "type": "string",
                "format": "date-time",
                "context": [
                    "view",
                    "edit",
                    "embed"
                ]
            },
            "date_gmt": {
                "description": "Час публікації об'єкта, за GMT.",
                "type": "string",
                "format": "date-time",
                "context": [
                    "view",
                    "edit"
                ]
            },
            "guid": {
                "description": "Глобальний унікальний ідентифікатор об'єкта.",
                "type": "object",
                "context": [
                    "view",
                    "edit"
                ],
                "readonly": true,
                "properties": {
                    "raw": {
                        "description": "GUID для об'єкта, як він існує в базі даних.",
                        "type": "string",
                        "context": [
                            "edit"
                        ],
                        "readonly": true
                    },
                    "rendered": {
                        "description": "GUID для об'єкта, перетворений для показу.",
                        "type": "string",
                        "context": [
                            "view",
                            "edit"
                        ],
                        "readonly": true
                    }
                }
            },
            "id": {
                "description": "Унікальний ідентифікатор об'єкта.",
                "type": "integer",
                "context": [
                    "view",
                    "edit",
                    "embed"
                ],
                "readonly": true
            },
            "link": {
                "description": "URL об'єкта.",
                "type": "string",
                "format": "uri",
                "context": [
                    "view",
                    "edit",
                    "embed"
                ],
                "readonly": true
            },
            "modified": {
                "description": "Дата останньої зміни об'єкта за тимчасовою зоною сайту.",
                "type": "string",
                "format": "date-time",
                "context": [
                    "view",
                    "edit"
                ],
                "readonly": true
            },
            "modified_gmt": {
                "description": "Дата останньої зміни об'єкта в GMT.",
                "type": "string",
                "format": "date-time",
                "context": [
                    "view",
                    "edit"
                ],
                "readonly": true
            },
            "slug": {
                "description": "Буквенно-цифровий ідентифікатор для об'єкта унікальний для його типу.",
                "type": "string",
                "context": [
                    "view",
                    "edit",
                    "embed"
                ]
            },
            "status": {
                "description": "Іменований статус для об'єкта.",
                "type": "string",
                "enum": [
                    "Publish",
                    "Future",
                    "draft",
                    "pending",
                    "private"
                ],
                "context": [
                    "view",
                    "edit"
                ]
            },
            "type": {
                "description": "Тип запису для об'єкта.",
                "type": "string",
                "context": [
                    "view",
                    "edit",
                    "embed"
                ],
                "readonly": true
            },
            "password": {
                "description": "Пароль для захисту змісту та уривка.",
                "type": "string",
                "context": [
                    "edit"
                ]
            },
            "title": {
                "description": "Назва для об'єкта.",
                "type": "object",
                "context": [
                    "view",
                    "edit",
                    "embed"
                ],
                "properties": {
                    "raw": {
                        "description": "Назва об'єкта як вона існує в базі даних.",
                        "type": "string",
                        "context": [
                            "edit"
                        ]
                    },
                    "rendered": {
                        "description": "HTML назва об'єкта, перетворена для показу.",
                        "type": "string",
                        "context": [
                            "view",
                            "edit",
                            "embed"
                        ],
                        "readonly": true
                    }
                }
            },
            "content": {
                "description": "Вміст об'єкта.",
                "type": "object",
                "context": [
                    "view",
                    "edit"
                ],
                "properties": {
                    "raw": {
                        "description": "Вміст об'єкта, як він існує в базі даних.",
                        "type": "string",
                        "context": [
                            "edit"
                        ]
                    },
                    "rendered": {
                        "description": "HTML вміст об'єкта перетворений для показу.",
                        "type": "string",
                        "context": [
                            "view",
                            "edit"
                        ],
                        "readonly": true
                    },
                    "protected": {
                        "description": "Чи захищено вміст паролем.",
                        "type": "boolean",
                        "context": [
                            "view",
                            "edit",
                            "embed"
                        ],
                        "readonly": true
                    }
                }
            },
            "author": {
                "description": "ID автора об'єкта.",
                "type": "integer",
                "context": [
                    "view",
                    "edit",
                    "embed"
                ]
            },
            "excerpt": {
                "description": "Уривок об'єкта.",
                "type": "object",
                "context": [
                    "view",
                    "edit",
                    "embed"
                ],
                "properties": {
                    "raw": {
                        "description": "Уривок об'єкта як він існує в базі даних.",
                        "type": "string",
                        "context": [
                            "edit"
                        ]
                    },
                    "rendered": {
                        "description": "HTML уривок об'єкта, перетворений для показу.",
                        "type": "string",
                        "context": [
                            "view",
                            "edit",
                            "embed"
                        ],
                        "readonly": true
                    },
                    "protected": {
                        "description": "Чи захищати паролем уривок.",
                        "type": "boolean",
                        "context": [
                            "view",
                            "edit",
                            "embed"
                        ],
                        "readonly": true
                    }
                }
            },
            "featured_media": {
                "description": "ID вибраного медіа для об'єкта.",
                "type": "integer",
                "context": [
                    "view",
                    "edit",
                    "embed"
                ]
            },
            "comment_status": {
                "description": "Чи відкриті коментарі для об'єкта.",
                "type": "string",
                "enum": [
                    "open",
                    "closed"
                ],
                "context": [
                    "view",
                    "edit"
                ]
            },
            "ping_status": {
                "description": "Чи приймає об'єкт сповіщення.",
                "type": "string",
                "enum": [
                    "open",
                    "closed"
                ],
                "context": [
                    "view",
                    "edit"
                ]
            },
            "format": {
                "description": "Формат для об'єкта.",
                "type": "string",
                "enum": [
                    "standard",
                    "aside",
                    "chat",
                    "gallery",
                    "link",
                    "image",
                    "quote",
                    "status",
                    "video",
                    "audio"
                ],
                "context": [
                    "view",
                    "edit"
                ]
            },
            "meta": {
                "description": "Мета поля.",
                "type": "object",
                "context": [
                    "view",
                    "edit"
                ],
                "properties": []
            },
            "sticky": {
                "description": "Вважати об'єкт приліпленим чи ні.",
                "type": "boolean",
                "context": [
                    "view",
                    "edit"
                ]
            },
            "template": {
                "description": "Файл теми, який використовується для показу об'єкта.",
                "type": "string",
                "context": [
                    "view",
                    "edit"
                ]
            },
            "categories": {
                "description": "Елементи призначені об'єкту в таксономії категорії.",
                "type": "array",
                "items": {
                    "type": "integer"
                },
                "context": [
                    "view",
                    "edit"
                ]
            },
            "tags": {
                "description": "Елементи призначені об'єкту в таксономії post_tag.",
                "type": "array",
                "items": {
                    "type": "integer"
                },
                "context": [
                    "view",
                    "edit"
                ]
            }
        },
        "links": [
            {
                "rel": "https://api.w.org/action-publish",
                "title": "Поточний користувач може опублікувати цей запис.",
                "href": "http://wptest.ru/wp-json/wp/v2/posts/{id}",
                "targetSchema": {
                    "type": "object",
                    "properties": {
                        "status": {
                            "type": "string",
                            "enum": [
                                "Publish",
                                "future"
                            ]
                        }
                    }
                }
            },
            {
                "rel": "https://api.w.org/action-sticky",
                "title": "Поточний користувач може зробити цей запис прикріпленим.",
                "href": "http://wptest.ru/wp-json/wp/v2/posts/{id}",
                "targetSchema": {
                    "type": "object",
                    "properties": {
                        "sticky": {
                            "type": "boolean"
                        }
                    }
                }
            },
            {
                "rel": "https://api.w.org/action-assign-author",
                "title": "Поточний користувач може змінити автора для цього запису.",
                "href": "http://wptest.ru/wp-json/wp/v2/posts/{id}",
                "targetSchema": {
                    "type": "object",
                    "properties": {
                        "author": {
                            "type": "integer"
                        }
                    }
                }
            },
            {
                "rel": "https://api.w.org/action-assign-categories",
                "title": "Поточний користувач може призначати елементи в таксономії категорії.",
                "href": "http://wptest.ru/wp-json/wp/v2/posts/{id}",
                "targetSchema": {
                    "type": "object",
                    "properties": {
                        "categories": {
                            "type": "array",
                            "items": {
                                "type": "integer"
                            }
                        }
                    }
                }
            },
            {
                "rel": "https://api.w.org/action-create-categories",
                "title": "Поточний користувач може створювати елементи в таксономії категорії.",
                "href": "http://wptest.ru/wp-json/wp/v2/posts/{id}",
                "targetSchema": {
                    "type": "object",
                    "properties": {
                        "categories": {
                            "type": "array",
                            "items": {
                                "type": "integer"
                            }
                        }
                    }
                }
            },
            {
                "rel": "https://api.w.org/action-assign-tags",
                "title": "Поточний користувач може призначати елементи в таксономії post_tag.",
                "href": "http://wptest.ru/wp-json/wp/v2/posts/{id}",
                "targetSchema": {
                    "type": "object",
                    "properties": {
                        "tags": {
                            "type": "array",
                            "items": {
                                "type": "integer"
                            }
                        }
                    }
                }
            },
            {
                "rel": "https://api.w.org/action-create-tags",
                "title": "Поточний користувач може створювати елементи в таксономії post_tag.",
                "href": "http://wptest.ru/wp-json/wp/v2/posts/{id}",
                "targetSchema": {
                    "type": "object",
                    "properties": {
                        "tags": {
                            "type": "array",
                            "items": {
                                "type": "integer"
                            }
                        }
                    }
                }
            }
        ]
    }
}




Отримання запису

Алгоритм схожий на роботу функції get_post() .

Вид запиту

Доступ: публічний

GET /wp/v2/posts/{id}

Параметри запиту

id
(обов’язковий)
Унікальний ідентифікатор запису
context
Область, у якій виконується запит; визначає поля, присутні у відповіді. Можливо
view ,
embed ,
edit .

Типово: view

password
Пароль для отримання доступу до захищеного паролем запису.

Приклад запиту

$ curl http://demo.wp-api.org/wp-json/wp/v2/posts/{id}

Приклад запиту на об’єкт запису з ID=1:

https://demo.wp-api.org/wp-json/wp/v2/posts/1

Відповідь:

{
   "id":1,
   "date":"2017-05-23T06:25:50",
   "date_gmt":"2017-05-23T06:25:50",
   "guid": {
	  "rendered":"http://demo.wp-api.org/?p=1"
   },
   "modified":"2017-05-23T06:25:50",
   "modified_gmt":"2017-05-23T06:25:50",
   "slug": "hello-world",
   "status":"publish",
   "type":"post",
   "link":"https://demo.wp-api.org/2017/05/23/hello-world/",
   "title":{
	  "rendered":"Hello world!"
   },
   "content":{
	  "rendered":"<p>Welcome to <a href="http://wp-api.org/">WP API Demo Sites</a>. start blogging!</p>n",
	  "protected":false
   },
   "excerpt":{
	  "rendered":"<p>Welcome to WP API Demo Sites. Це є вашим першим повідомленням.
	  "protected":false
   },
   "author":1,
   "featured_media":0,
   "comment_status":"open",
   "ping_status":"open",
   "sticky": false,
   "template":"",
   "format":"standard",
   "meta":[

   ],
   "categories":[
	  1
   ],
   "tags":[

   ],
   "_links":{
	  "self":[
		 {
			"href":"https://demo.wp-api.org/wp-json/wp/v2/posts/1"
		 }
	  ],
	  "collection":[
		 {
			"href":"https://demo.wp-api.org/wp-json/wp/v2/posts"
		 }
	  ],
	  "about":[
		 {
			"href":"https://demo.wp-api.org/wp-json/wp/v2/types/post"
		 }
	  ],
	  "author":[
		 {
			"embeddable":true,
			"href":"https://demo.wp-api.org/wp-json/wp/v2/users/1"
		 }
	  ],
	  "replies":[
		 {
			"embeddable":true,
			"href":"https://demo.wp-api.org/wp-json/wp/v2/comments?post=1"
		 }
	  ],
	  "version-history":[
		 {
			"href":"https://demo.wp-api.org/wp-json/wp/v2/posts/1/revisions"
		 }
	  ],
	  "wp:attachment":[
		 {
			"href":"https://demo.wp-api.org/wp-json/wp/v2/media?parent=1"
		 }
	  ],
	  "wp:term":[
		 {
			"taxonomy":"category",
			"embeddable":true,
			"href":"https://demo.wp-api.org/wp-json/wp/v2/categories?post=1"
		 },
		 {
			"taxonomy":"post_tag",
			"embeddable":true,
			"href":"https://demo.wp-api.org/wp-json/wp/v2/tags?post=1"
		 }
	  ],
	  "curies":[
		 {
			"name":"wp",
			"href":"https://api.w.org/{rel}",
			"templated":true
		 }
	  ]
   }
}




Оновлення запису

Алгоритм схожий на роботу функції wp_update_post() .

Вид запиту

Доступ: потрібна авторизація

POST|PUT|PATCH /wp/v2/posts/{id}

Параметри запиту

id
(обов’язковий)
Унікальний ідентифікатор запису, який потрібно оновити.
Інші параметри
Цілком збігаються з параметрами
“Створення запису” .

Приклад запиту

$ curl -X POST http://demo.wp-api.org/wp-json/wp/v2/posts/<id> -d '{"title":"My New Title"}'




Видалення запису

Алгоритм схожий на роботу функції wp_delete_post() .

Вид запиту

Доступ: потрібна авторизація

DELETE /wp/v2/posts/{id}

Параметри запиту

id
(обов’язковий)
Унікальний ідентифікатор запису, який потрібно видалити.
force
(логічний)
Видаляти повз кошик, якщо він увімкнений.
true– Примусове видалення назавжди.

Типово: false

Приклад запиту

Видалимо пост 25:

$ curl -X DELETE http://demo.wp-api.org/wp-json/wp/v2/posts/25

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *