Vulpo One

Tag: oembed

oEmbed и WordPress

В принципе, в новой версии WordPress 2.9 вставка объектов oEmbed работает из коробки. Я вот сразу удалил Viper’s Video Tags для своих немногих утюбовских роликов, но нам ведь этого мало, правда? В коробке всегда что-нибудь забудут или где-нибудь перемудрят.

Как это работает

Берем ссылку на страничку, которая поддерживает oEmbed и не делая ее активной гиперссылкой просто пишем отдельной строчкой (подобное поведение можно глобально отключить в настройках):

https://www.youtube.com/watch?v=Y52ONQ8bsmY

становится

Если же нам нужно разместить элемент посреди текста — просто обрамляем его тегами [embed][/embed]

Обзор возможностей

Сначала посмотрим что мы имеем из коробки: вставка объектов из доверенных источников. Как ни странно, доверенные источники не задаются всякими сертификатами, а просто прописаны в коде. Это:

  • http://www.youtube.com/oembed
  • http://blip.tv/oembed/
  • http://www.vimeo.com/api/oembed.{format}
  • http://www.dailymotion.com/api/oembed
  • http://www.flickr.com/services/oembed/
  • http://www.hulu.com/api/oembed.{format}
  • http://lab.viddler.com/services/oembed/
  • http://qik.com/api/oembed.{format}
  • http://revision3.com/api/oembed/
  • http://photobucket.com/oembed
  • http://photobucket.com/oembed
  • http://www.scribd.com/services/oembed
  • http://wordpress.tv/oembed/

негусто. Зато вроде все проверенные, да и всё равно большинству нужен только утюб. Их можно использовать всем юзерам (возможно даже в камментах — не проверял). В принципе, плагинами можно список расширить, но есть способ лучше.

Снимаем ограничения

Итак, первый бонус — Enable oEmbed Discovery от Viper007Bond. Снимает ограничение на доверенные источники. Теперь пользователи, имеющие право доступа “unfiltered_html” (по умолчанию это роли Admin и Editor) могут добавлять любые странички, поддерживающие oEmbed. Профит? Профит!

А мы чем хуже?

Сделаем блог источником вставок. Для этого нам нужен плагин oEmbed Provider. Ставим и радуемся. Каких-либо настроек у него я не нашёл, хотя хотелось бы заменить тип с ‘link’ на ‘rich’, но это не настолько принципиально.

Теперь ваш блог готов к Web 3.0! Ну, мой, во всяком случае, хотя для галереи бы еще не помешало, но пока нету =(

Comments


oEmbed

И грядёт эра Web 3.0 — эра межсайтовых взаимодействий,
и основана она будет на трёх китах: OpenID, OAuth и oEmbed

(Кристиан Арчеронострадамус)

В отличие от двух других, OpenID в представлении почти не нуждается. Это паспорт “я такой-то с такого-то сервера”. Сайт запрашивает у сервера авторизации подтверждение, типа, скажи мне myopenid.com, этот ко мне стучится правда vasya_pupkin? Дальше мы его узнаём и пускаем как родного — за него поручились.

OAuth чуть хитрее. Я с ним особо не сталкивался и в дневнике не упоминал. OAuth — это средство авторизованного доступа к API. Что это, с чем его едят, кому это надо и почему это не OpenID неплохо описано в статье на Хабре

И вот мы вплотную подошли к oEmbed. Это очень молодой и возможно даже не до конца проработанный стандарт, но дико удобный и полезный… будет, когда широко распространится. Признаюсь, узнал я о нём буквально на днях.

Функциональность его не нова — мы и ранее вставляли картинки тегами <img>, видео хтоническими конструкциями из <object>, <embed>, флешем, джавой и даже новыми средствами html5, но это каждый сервис извращался во-своему, плееры обновлялись, постоянные ссылки на странички не подкреплялись постоянными ссылками на картинки на них.

oEmbed унифицирует вставки произвольного кода в страницу при помощи достаточно простого API.

Выглядит это так:

image0

Всё предельно просто, кроме того куда нам слать GET-запрос =) Адрес для GET-запроса хранится на самой странице, кусок которой мы хотим внедрить в виде тегов с атрибутами type=”application/json+oembed” или type=”application/xml+oembed”

Типы вставляемых элементов:

  • photo — изображение. Например, с сервиса Flickr. Результат по идее скармливается тегу <img>
  • video — видео, а возможно и аудио. Поддерживается Google Video и YouTube
  • link — ссылка на документ. Допускается краткое (да и полное) содержимое, хотя отображение текста зависит скорее от желания приёмника. WordPress, например, отображает только заголовок, а вот сервис микроблогов identi.ca показывает предпросмотр. Именно линки создаёт плагин oEmbed Provider для WordPress, о котором в следующей мессаге
  • rich — просто вставка куска текста =)

Подробная (и, кстати, небольшая совсем) инструкция на буржуйском есть на официальном сайте http://www.oembed.com/ (хотя там всё равно без 100 грамм не разберешься…)

Ну и на закусь пример:

[embed]http://sunhome.snch.info/avatars/hwc.html[/embed]

Ссылка на какую-нибудь из коллекций в моей галерее аватарок выводит первые 10 штук, заголовок и ссылку на галерею целиком.

UPD: сломалось :(

Comments