Команда wp embed
в WP-CLI предоставляет набор инструментов для работы с oEmbed в WordPress. Она позволяет управлять кэшем, обрабатывать URL, просматривать доступные обработчики и поставщиков oEmbed и многое другое. В этом руководстве мы рассмотрим все подкоманды, параметры и приведем уникальные примеры.
Основные подкоманды wp embed
Команда | Описание |
---|---|
wp embed cache clear | Очищает кэш oEmbed для указанной записи. |
wp embed cache find | Находит идентификатор записи кэша oEmbed для указанного URL. |
wp embed cache trigger | Запускает кэширование результатов oEmbed для указанной записи. |
wp embed fetch | Преобразует URL в HTML встроенного контента. |
wp embed handler list | Отображает список всех доступных обработчиков oEmbed. |
wp embed provider list | Отображает список всех доступных поставщиков oEmbed. |
wp embed provider match | Определяет соответствующего поставщика oEmbed для указанного URL. |
1. wp embed cache clear
Удаляет кэш oEmbed для определенной записи. Данные кэша хранятся в метаданных записи.
Синтаксис:
wp embed cache clear {post_id}
Параметры:
{post_id}
— ID записи, для которой нужно очистить кэш.
Пример:
$ wp embed cache clear 789
Success: Cleared oEmbed cache.
2. wp embed cache find
Находит идентификатор записи кэша oEmbed для указанного URL. Начиная с WordPress 4.9, кэш oEmbed для URL без привязки к конкретной записи создается как новая запись типа oembed_cache
.
Синтаксис:
wp embed cache find {url} [--width={width}] [--height={height}] [--discover]
Параметры:
{url}
— URL для поиска данных oEmbed.[--width={width}]
— Ширина встроенного элемента, по умолчанию 500px.[--height={height}]
— Высота встроенного элемента, по умолчанию 1.5x ширины.[--discover]
— Включить oEmbed-дискавери.
Пример:
$ wp embed cache find https://vimeo.com/12345678 --width=640 --height=360
890
3. wp embed cache trigger
Запускает процесс кэширования результатов oEmbed для указанной записи.
Синтаксис:
wp embed cache trigger {post_id}
Параметры:
{post_id}
— ID записи для кэширования oEmbed.
Пример:
$ wp embed cache trigger 567
Success: Caching triggered!
4. wp embed fetch
Пытается преобразовать указанный URL в HTML встроенного контента. Может работать как в обычном, так и в «сыром» режиме.
Синтаксис:
wp embed fetch {url} [--width={width}] [--height={height}] [--post-id={id}] [--discover] [--skip-cache] [--raw] [--raw-format={json|xml}]
Параметры:
{url}
— URL для обработки.[--width={width}]
— Ширина встроенного элемента.[--height={height}]
— Высота встроенного элемента.[--post-id={id}]
— Привязать кэширование oEmbed к указанной записи.[--discover]
— Включить поиск через oEmbed-дискавери.[--skip-cache]
— Игнорировать существующий кэш.[--raw]
— Возвращает необработанные данные вместо HTML.[--raw-format={json|xml}]
— Формат необработанных данных.
Примеры:
- Получить HTML встроенного контента:
$ wp embed fetch https://www.youtube.com/watch?v=kJQP7kiw5Fk
<iframe width="640" height="360" src="https://www.youtube.com/embed/kJQP7kiw5Fk" ...
- Получить сырые данные:
$ wp embed fetch https://www.youtube.com/watch?v=kJQP7kiw5Fk --raw
{"author_url":"https://www.youtube.com/user/DespacitoVEVO","width":640, ...
5. wp embed handler list
Отображает список доступных обработчиков oEmbed.
Синтаксис:
wp embed handler list [--fields={fields}] [--format={format}]
Параметры:
[--fields={fields}]
— Указать отображаемые поля (например,id,regex
).[--format={format}]
— Формат вывода (table
,json
,csv
).
Пример:
$ wp embed handler list --fields=id,regex
+-----------------------+---------------------------------+
| id | regex |
+-----------------------+---------------------------------+
| youtube_embed_url | #https?://youtu\.be/.*#i |
| audio | #https?://.*\.(mp3|wav)$#i |
6. wp embed provider list
Выводит список доступных поставщиков oEmbed.
Синтаксис:
wp embed provider list [--fields={fields}] [--format={format}] [--force-regex]
Параметры:
[--fields={fields}]
— Указать поля для вывода (format,endpoint
).[--format={format}]
— Формат вывода (table
,json
,csv
).[--force-regex]
— Преобразовать URL поставщиков в регулярные выражения.
Пример:
$ wp embed provider list --fields=format,endpoint
+----------------------------+-----------------------------------------+
| format | endpoint |
+----------------------------+-----------------------------------------+
| #https?://vimeo\.com/.*#i | https://vimeo.com/api/oembed.json |
| #https?://twitter\.com/.*#i| https://publish.twitter.com/oembed |
7. wp embed provider match
Находит соответствующего поставщика oEmbed для указанного URL.
Синтаксис:
wp embed provider match {url} [--discover] [--link-type={json|xml}]
Параметры:
{url}
— URL для поиска поставщика.[--discover]
— Использовать oEmbed-дискавери.[--link-type={json|xml}]
— Указать тип ответа (json
,xml
).
Пример:
$ wp embed provider match https://vimeo.com/987654321
https://vimeo.com/api/oembed.json
Заключение
Команда wp embed
в WP-CLI — это мощный инструмент для работы с oEmbed в WordPress. Она упрощает управление кэшем, обработку URL и взаимодействие с поставщиками. Используя приведенные примеры, вы сможете эффективно управлять встроенным контентом на своем сайте.