WordPress как на ладони
Шаблоны, плагины и темы для настоящих поклонников Elementor. От TemplateMonster.com wordpress jino

Медиа

Эти маршруты позволяют получить/создать/обновить/удалить вложение (медиа).

Возможные маршруты:

/wp/v2/media        // работает со всеми вложениями
/wp/v2/media/{ID}   // работает с указанной вместо {ID} вложением

Ниже описаны разные конечные точки для этих маршрутов.

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

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

Параметр Контекст Описание
date
string, datetime
view, edit, embed Дата публикации объекта, по временной зоне сайта.
date_gmt
string, datetime
view, edit Время публикации объекта, по GMT.
guid
object
view, edit Глобальный уникальный идентификатор для объекта.
Только для чтения.
id
integer
view, edit, embed Уникальный идентификатор для объекта.
Только для чтения.
link
string, uri
view, edit, embed URL объекта.
Только для чтения.
modified
string, datetime
view, edit Дата последнего изменения объекта, по временной зоне сайта.
Только для чтения.
modified_gmt
string, datetime
view, edit Дата последнего изменения объекта, в GMT.
Только для чтения.
slug
string
view, edit, embed Буквенно-цифровой идентификатор для объекта уникальный для его типа.
status
string
view, edit Именованный статус для объекта.
Может быть одним из publish, future, draft, pending, private.
type
string
view, edit, embed Тип записи для объекта.
Только для чтения.
title
object
view, edit, embed Название для объекта.
Только для чтения.
author
integer
view, edit, embed ID автора объекта.
comment_status
string
view, edit Открыты ли комментарии для объекта.
Может быть open или closed.
ping_status
string
view, edit Принимает ли объект уведомления.
Может быть open или closed.
meta
object
view, edit Мета поля.
template
string
view, edit Файл темы используемый для показа объекта.
alt_text
string
view, edit, embed Альтернативный текст для показа когда вложение не отображается.
caption
object
view, edit, embed Подпись вложения.
description
object
view, edit Описание вложения.
media_type
string
view, edit, embed Тип вложения.
Может быть image или file.
Только для чтения.
mime_type
string
view, edit, embed MIME тип вложения.
Только для чтения.
media_details
object
view, edit, embed Подробности о медиа файле, специфичные его типу.
Только для чтения.
post
integer
view, edit ID для ассоциированных записей для вложения.
source_url
string, uri
view, edit, embed URL оригинала файла вложения.
Только для чтения.

wp/v2/media

Запрос OPTIONS к маршруту вернет полное описание этого маршрута: эндпоинты их параметры, схему.

$ curl -X OPTIONS -i http://demo.wp-api.org/wp-json/wp/v2/media
{
    "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"
                },
                "after": {
                    "required": false,
                    "description": "Ограничить ответ записями опубликованными после заданной ISO8601 совместимой даты. ",
                    "type": "string"
                },
                "author": {
                    "required": false,
                    "default": [],
                    "description": "Ограничить выборку записями определенных авторов.",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "author_exclude": {
                    "required": false,
                    "default": [],
                    "description": "Убедиться что выборка исключает записи назначенные определенным авторам.",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "before": {
                    "required": false,
                    "description": "Ограничить ответ записями опубликованными до заданной ISO8601 совместимой даты.",
                    "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": "desc",
                    "enum": [
                        "asc",
                        "desc"
                    ],
                    "description": "Упорядочить сортировку атрибута по возрастанию или убыванию.",
                    "type": "string"
                },
                "orderby": {
                    "required": false,
                    "default": "date",
                    "enum": [
                        "author",
                        "date",
                        "id",
                        "include",
                        "modified",
                        "parent",
                        "relevance",
                        "slug",
                        "include_slugs",
                        "title"
                    ],
                    "description": "Сортировать коллекцию по атрибуту объекта.",
                    "type": "string"
                },
                "parent": {
                    "required": false,
                    "default": [],
                    "description": "Ограничить выборку до определенных ID родителей.",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "parent_exclude": {
                    "required": false,
                    "default": [],
                    "description": "Ограничить выборку до объектов за исключением имеющих определенный ID родителя.",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "slug": {
                    "required": false,
                    "description": "Ограничить выборку до записей с одним или несколькими установленными конкретными ярлыками.",
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "status": {
                    "required": false,
                    "default": "inherit",
                    "description": "Ограничить выборку до записей с одним или несколькими установленными статусами.",
                    "type": "array",
                    "items": {
                        "enum": [
                            "inherit",
                            "private",
                            "trash"
                        ],
                        "type": "string"
                    }
                },
                "media_type": {
                    "required": false,
                    "enum": [
                        "image",
                        "video",
                        "text",
                        "application",
                        "audio"
                    ],
                    "description": "Ограничить выборку до вложений определенного типа медиа.",
                    "type": "string"
                },
                "mime_type": {
                    "required": false,
                    "description": "Ограничить выборку до вложений определенного MIME типа.",
                    "type": "string"
                }
            }
        },
        {
            "methods": [
                "POST"
            ],
            "args": {
                "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"
                },
                "title": {
                    "required": false,
                    "description": "Название для объекта.",
                    "type": "object"
                },
                "author": {
                    "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"
                },
                "meta": {
                    "required": false,
                    "description": "Мета поля.",
                    "type": "object"
                },
                "template": {
                    "required": false,
                    "description": "Файл темы используемый для показа объекта.",
                    "type": "string"
                },
                "alt_text": {
                    "required": false,
                    "description": "Альтернативный текст для показа когда вложение не отображается.",
                    "type": "string"
                },
                "caption": {
                    "required": false,
                    "description": "Подпись вложения.",
                    "type": "object"
                },
                "description": {
                    "required": false,
                    "description": "Описание вложения.",
                    "type": "object"
                },
                "post": {
                    "required": false,
                    "description": "ID для ассоциированых записей для вложения.",
                    "type": "integer"
                }
            }
        }
    ],
    "schema": {
        "$schema": "http://json-schema.org/draft-04/schema#",
        "title": "attachment",
        "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
            },
            "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
                    }
                }
            },
            "author": {
                "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"
                ]
            },
            "meta": {
                "description": "Мета поля.",
                "type": "object",
                "context": [
                    "view",
                    "edit"
                ],
                "properties": []
            },
            "template": {
                "description": "Файл темы используемый для показа объекта.",
                "type": "string",
                "context": [
                    "view",
                    "edit"
                ]
            },
            "alt_text": {
                "description": "Альтернативный текст для показа когда вложение не отображается.",
                "type": "string",
                "context": [
                    "view",
                    "edit",
                    "embed"
                ]
            },
            "caption": {
                "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
                    }
                }
            },
            "description": {
                "description": "Описание вложения.",
                "type": "object",
                "context": [
                    "view",
                    "edit"
                ],
                "properties": {
                    "raw": {
                        "description": "Описание для объекта как оно существует в базе данных.",
                        "type": "string",
                        "context": [
                            "edit"
                        ]
                    },
                    "rendered": {
                        "description": "HTML описание для объекта преобразованное для показа.",
                        "type": "string",
                        "context": [
                            "view",
                            "edit"
                        ],
                        "readonly": true
                    }
                }
            },
            "media_type": {
                "description": "Тип вложения.",
                "type": "string",
                "enum": [
                    "image",
                    "file"
                ],
                "context": [
                    "view",
                    "edit",
                    "embed"
                ],
                "readonly": true
            },
            "mime_type": {
                "description": "MIME тип вложения.",
                "type": "string",
                "context": [
                    "view",
                    "edit",
                    "embed"
                ],
                "readonly": true
            },
            "media_details": {
                "description": "Подробности о медиа файле, специфичные его типу.",
                "type": "object",
                "context": [
                    "view",
                    "edit",
                    "embed"
                ],
                "readonly": true
            },
            "post": {
                "description": "ID для ассоциированых записей для вложения.",
                "type": "integer",
                "context": [
                    "view",
                    "edit"
                ]
            },
            "source_url": {
                "description": "URL оригинала файла вложения.",
                "type": "string",
                "format": "uri",
                "context": [
                    "view",
                    "edit",
                    "embed"
                ],
                "readonly": true
            }
        },
        "links": [
            {
                "rel": "https://api.w.org/action-assign-author",
                "title": "Текущий пользователь может сменить автора для этой записи.",
                "href": "http://wp-test.ru/wp-json/wp/v2/media/{id}",
                "targetSchema": {
                    "type": "object",
                    "properties": {
                        "author": {
                            "type": "integer"
                        }
                    }
                }
            }
        ]
    },
    "_links": {
        "self": "http://wp-test.ru/wp-json/wp/v2/media"
    }
}

Список всех вложений

Алгоритм схож с работой функции get_posts(), где для каждого объекта вложения добавлены специфические свойства.

Вид запроса

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

GET /wp/v2/media

Параметры запроса

context
Область, в которой выполняется запрос; определяет поля, присутствующие в ответе. Может быть view, embed, edit.
По умолчанию: view
page
Текущая страница коллекции.
По умолчанию: 1
per_page
Максимальное количество вложений в результирующем наборе.
По умолчанию: 10
search
Ограничение по количеству возвращаемых записей при поиске.
after
Ограничить ответ по вложениям, опубликованных после заданной даты, соответствующей ISO8601.
before
Ограничить ответ по вложениям, опубликованных до заданной даты, соответствующей ISO8601.
exclude
Исключает из набора вложения по их ID.
include
Включает в набор вложения по их ID. В наборе будут присутствовать только те вложения, ID которых были указаны.
offset
Смещение (отступ) набора результатов на указанное число.
По умолчанию: 1
order
Сортировка вложений в выборке. Может быть asc или desc.
По умолчанию: desc
orderby
Сортировка записей в выборке по атрибутам. Может быть author, date, id, include, modified, parent, relevance, slug, title.
По умолчанию: date
parent
Ограничить выборку до определенных ID родителей.
parent_exclude
Ограничить выборку до объектов за исключением имеющих определенный ID родителя.
slug
Ограничение выборки по указанному одному ярлыку вложения или нескольким.
status
Ограничение выборки по одному статусу или нескольким.
По умолчанию: inherit
media_type
Ограничить выборку до вложений определенного типа медиа. Может быть: image, video, audio, application
mime_type
Ограничить выборку до вложений определенного MIME типа.

Пример запроса

$ curl http://demo.wp-api.org/wp-json/wp/v2/media

Вернется массив объектов, где каждый объект вложения схож с тем, что описан в пункте "Получить вложение":

[
	{
	... данные вложения <id> ...
	},
	{
	... данные вложения <id> ...
	},
	{
	... данные вложения <id> ...
	}
]

Создание вложения

Создает медиа файл. Алгоритм похож на работу функции wp_insert_attachment().

Вид запроса

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

POST /wp/v2/media

Параметры запроса

date(строка)
Дата публикации объекта, по временной зоне сайта.
date_gmt(строка)
Время публикации объекта, по GMT.
slug(строка)
Буквенно-цифровой идентификатор для объекта уникальный для его типа.
status(строка)
Именованный статус для объекта. Возможные значения: publish, future, draft, pending, private.
title(объект)
Название для объекта.
author(число)
ID автора объекта.
comment_status(строка)
Открыты ли комментарии для объекта. Возможные значения: open, closed.
ping_status(строка)
Принимает ли объект уведомления. Возможные значения: open, closed.
meta(объект)
Мета поля.
template(строка)
Файл темы используемый для показа объекта.
alt_text(строка)
Альтернативный текст для показа когда вложение не отображается.
caption(объект)
Подпись вложения.
description(объект)
Описание вложения.
post(число)
ID для ассоциированных записей для вложения.

Пример запроса

$ curl -X POST http://demo.wp-api.org/wp-json/wp/v2/media

wp/v2/media/{id}

Запрос OPTIONS к маршруту вернет полное описание этого маршрута: эндпоинты их параметры, схему.

$ curl -X OPTIONS -i http://demo.wp-api.org/wp-json/wp/v2/media/{id}
{
    "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"
                },
                "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"
                },
                "title": {
                    "required": false,
                    "description": "Название для объекта.",
                    "type": "object"
                },
                "author": {
                    "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"
                },
                "meta": {
                    "required": false,
                    "description": "Мета поля.",
                    "type": "object"
                },
                "template": {
                    "required": false,
                    "description": "Файл темы используемый для показа объекта.",
                    "type": "string"
                },
                "alt_text": {
                    "required": false,
                    "description": "Альтернативный текст для показа когда вложение не отображается.",
                    "type": "string"
                },
                "caption": {
                    "required": false,
                    "description": "Подпись вложения.",
                    "type": "object"
                },
                "description": {
                    "required": false,
                    "description": "Описание вложения.",
                    "type": "object"
                },
                "post": {
                    "required": false,
                    "description": "ID для ассоциированых записей для вложения.",
                    "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": "attachment",
        "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
            },
            "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
                    }
                }
            },
            "author": {
                "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"
                ]
            },
            "meta": {
                "description": "Мета поля.",
                "type": "object",
                "context": [
                    "view",
                    "edit"
                ],
                "properties": []
            },
            "template": {
                "description": "Файл темы используемый для показа объекта.",
                "type": "string",
                "context": [
                    "view",
                    "edit"
                ]
            },
            "alt_text": {
                "description": "Альтернативный текст для показа когда вложение не отображается.",
                "type": "string",
                "context": [
                    "view",
                    "edit",
                    "embed"
                ]
            },
            "caption": {
                "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
                    }
                }
            },
            "description": {
                "description": "Описание вложения.",
                "type": "object",
                "context": [
                    "view",
                    "edit"
                ],
                "properties": {
                    "raw": {
                        "description": "Описание для объекта как оно существует в базе данных.",
                        "type": "string",
                        "context": [
                            "edit"
                        ]
                    },
                    "rendered": {
                        "description": "HTML описание для объекта преобразованное для показа.",
                        "type": "string",
                        "context": [
                            "view",
                            "edit"
                        ],
                        "readonly": true
                    }
                }
            },
            "media_type": {
                "description": "Тип вложения.",
                "type": "string",
                "enum": [
                    "image",
                    "file"
                ],
                "context": [
                    "view",
                    "edit",
                    "embed"
                ],
                "readonly": true
            },
            "mime_type": {
                "description": "MIME тип вложения.",
                "type": "string",
                "context": [
                    "view",
                    "edit",
                    "embed"
                ],
                "readonly": true
            },
            "media_details": {
                "description": "Подробности о медиа файле, специфичные его типу.",
                "type": "object",
                "context": [
                    "view",
                    "edit",
                    "embed"
                ],
                "readonly": true
            },
            "post": {
                "description": "ID для ассоциированых записей для вложения.",
                "type": "integer",
                "context": [
                    "view",
                    "edit"
                ]
            },
            "source_url": {
                "description": "URL оригинала файла вложения.",
                "type": "string",
                "format": "uri",
                "context": [
                    "view",
                    "edit",
                    "embed"
                ],
                "readonly": true
            }
        },
        "links": [
            {
                "rel": "https://api.w.org/action-assign-author",
                "title": "Текущий пользователь может сменить автора для этой записи.",
                "href": "http://wp-test.ru/wp-json/wp/v2/media/{id}",
                "targetSchema": {
                    "type": "object",
                    "properties": {
                        "author": {
                            "type": "integer"
                        }
                    }
                }
            }
        ]
    }
}

Получение вложения

Вид запроса

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

GET /wp/v2/media/{id}

Параметры запроса

id (обязательный)
Уникальный идентификатор вложения. Этот же параметр указывается в маршруте.
context
Область, в которой выполняется запрос; определяет поля, присутствующие в ответе. Может быть view, embed, edit.
По умолчанию: view

Пример запроса

Запросим вложение с ID = 411:

$ curl http://demo.wp-api.org/wp-json/wp/v2/media/411

Результат:

{
	"id": 411,
	"date": "2018-06-10T17:41:48",
	"date_gmt": "2018-06-10T14:41:48",
	"guid": {
		"rendered": "http://wp-test.ru/wp-content/uploads/2018/03/cropped-Jellyfish.jpg"
	},
	"modified": "2018-06-10T17:41:48",
	"modified_gmt": "2018-06-10T14:41:48",
	"slug": "cropped-jellyfish-jpg",
	"status": "inherit",
	"type": "attachment",
	"link": "http://wp-test.ru/cropped-jellyfish-jpg/",
	"title": {
		"rendered": "cropped-Jellyfish.jpg"
	},
	"author": 1,
	"comment_status": "open",
	"ping_status": "closed",
	"template": "",
	"meta": [],
	"description": {
		"rendered": "<p class=\"attachment\"><a href='http://wp-test.ru/wp-content/uploads/2018/03/cropped-Jellyfish.jpg'><img width=\"250\" height=\"250\" src=\"http://wp-test.ru/wp-content/uploads/2018/03/cropped-Jellyfish.jpg\" class=\"attachment-medium size-medium\" alt=\"\" srcset=\"http://wp-test.ru/wp-content/uploads/2018/03/cropped-Jellyfish.jpg 250w, http://wp-test.ru/wp-content/uploads/2018/03/cropped-Jellyfish-100x100.jpg 100w, http://wp-test.ru/wp-content/uploads/2018/03/cropped-Jellyfish-150x150.jpg 150w\" sizes=\"100vw\" /></a></p>\n<p>http://wp-test.ru/wp-content/uploads/2018/03/cropped-Jellyfish.jpg</p>\n"
	},
	"caption": {
		"rendered": "<p>http://wp-test.ru/wp-content/uploads/2018/03/cropped-Jellyfish.jpg</p>\n"
	},
	"alt_text": "",
	"media_type": "image",
	"mime_type": "image/jpeg",
	"media_details": {
		"width": 250,
		"height": 250,
		"file": "2018/03/cropped-Jellyfish.jpg",
		"sizes": {
			"woocommerce_gallery_thumbnail": {
				"file": "cropped-Jellyfish-100x100.jpg",
				"width": 100,
				"height": 100,
				"mime_type": "image/jpeg",
				"source_url": "http://wp-test.ru/wp-content/uploads/2018/03/cropped-Jellyfish-100x100.jpg"
			},
			"thumbnail": {
				"file": "cropped-Jellyfish-150x150.jpg",
				"width": 150,
				"height": 150,
				"mime_type": "image/jpeg",
				"source_url": "http://wp-test.ru/wp-content/uploads/2018/03/cropped-Jellyfish-150x150.jpg"
			},
			"twentyseventeen-thumbnail-avatar": {
				"file": "cropped-Jellyfish-100x100.jpg",
				"width": 100,
				"height": 100,
				"mime_type": "image/jpeg",
				"source_url": "http://wp-test.ru/wp-content/uploads/2018/03/cropped-Jellyfish-100x100.jpg"
			},
			"full": {
				"file": "cropped-Jellyfish.jpg",
				"width": 250,
				"height": 250,
				"mime_type": "image/jpeg",
				"source_url": "http://wp-test.ru/wp-content/uploads/2018/03/cropped-Jellyfish.jpg"
			}
		},
		"image_meta": {
			"aperture": "0",
			"credit": "",
			"camera": "",
			"caption": "",
			"created_timestamp": "0",
			"copyright": "",
			"focal_length": "0",
			"iso": "0",
			"shutter_speed": "0",
			"title": "",
			"orientation": "0",
			"keywords": []
		}
	},
	"post": null,
	"source_url": "http://wp-test.ru/wp-content/uploads/2018/03/cropped-Jellyfish.jpg",
	"_links": {
		"self": [
			{
				"attributes": [],
				"href": "http://wp-test.ru/wp-json/wp/v2/media/411"
			}
		],
		"collection": [
			{
				"attributes": [],
				"href": "http://wp-test.ru/wp-json/wp/v2/media"
			}
		],
		"about": [
			{
				"attributes": [],
				"href": "http://wp-test.ru/wp-json/wp/v2/types/attachment"
			}
		],
		"author": [
			{
				"attributes": {
					"embeddable": true
				},
				"href": "http://wp-test.ru/wp-json/wp/v2/users/1"
			}
		],
		"replies": [
			{
				"attributes": {
					"embeddable": true
				},
				"href": "http://wp-test.ru/wp-json/wp/v2/comments?post=411"
			}
		]
	}
}

Обновление вложения

Алгоритм похож на работу функции wp_update_post()

Вид запроса

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

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

Параметры запроса

Смотрите параметры при создании вложения.

Пример запроса

$ curl -X POST http://demo.wp-api.org/wp-json/wp/v2/media/25?caption=Новая подпись

Удаление вложения

Алгоритм похож на работу функции wp_delete_attachment().

Вид запроса

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

DELETE /wp/v2/media/{id}

Параметры запроса

force(true/false)
Игнорировать ли перемещение в корзину и принудительно удалять.
По умолчанию: false

Пример запроса

Удалим вложение 25:

$ curl -X DELETE http://demo.wp-api.org/wp-json/wp/v2/media/25
campusboy 2989youtube.com/c/wpplus
Создатель YouTube канала wp-plus, на котором делюсь своим опытом. Активный пользователь wp-kama.ru. WordPress-разработчик. Разработка сайтов и лендингов. Доработка существующих проектов. Сопровождение ресурсов.
Редакторы: Kama 6810
Комментариев нет
    Здравствуйте, !     Войти . Зарегистрироваться