4. oEmbed
What?
oEmbed is a format for allowing an
embedded representation of a URL on
third party sites. The simple API allows a
website to display embedded content
(such as photos or videos) when a user
posts a link to that resource, without
having to parse the resource directly.
http://oembed.com/
4
Thursday 13 September 2012
6. oEmbed
What?
http://www.youtube.com/watch?v=yzdZHByJmFUa
6
Thursday 13 September 2012
7. oEmbed
oEmbed in
Drupal
Thursday 13 September 2012
8. oEmbed
What? http://drupal.org/project/oembed
By Dave Reid - bangpound - voxpelli
• oEmbed Core
• oEmbed Field
• oEmbed Filter
• oEmbed Embed.ly
• oEmbed Provider
• Media: oEmbed
8
Thursday 13 September 2012
9. oEmbed oEmbed
Core • Manage oEmbed providers (CTools exportables)
• Test oEmbed URLs
• Theming for oEmbed output
• Set of default providers
• Form API elements:
• oembed - oembed_bare - oembed_thumbnail
• API functions
• Caching
9
Thursday 13 September 2012
10. oEmbed oEmbed
Core
10
Thursday 13 September 2012
11. oEmbed oEmbed
Field
• Provides an oEmbed Field formatter
• For Link fields
(http://drupal.org/project/link)
11
Thursday 13 September 2012
12. oEmbed oEmbed
Filter
• Provides oEmbed filter for Drupal input
formats
12
Thursday 13 September 2012
13. oEmbed oEmbed
Embed.ly
• Adds definitions for providers supported
by embed.ly
• http://embed.ly: paid service to embed
rich media in your apps / websites
13
Thursday 13 September 2012
14. oEmbed oEmbed
Provider
• Makes it possible for a Drupal site to
become an oEmbed provider itself
• Provides oEmbed data in JSON /
JSONP / XML formats
• Defaults to rendering node HTML output
14
Thursday 13 September 2012
15. Media: oEmbed
oEmbed
• Integration with Media module
(http://drupal.org/project/media)
• Creates a oEmbed PHP Stream Wrapper
for Resource
• Implements the various formatter and file
listing hooks in the Media module.
15
Thursday 13 September 2012
16. oEmbed
Extending the
module
Thursday 13 September 2012
17. oEmbed
Extending • add support for an extra provider:
hook_default_oembedcore_provider()
• alter existing providers:
hook_oembedprovider_alter()
• alter oembed request data (to provider):
hook_oembed_request_alter()
• add your own providing logic (for your
oembed_provider enabled website) :
hook_oembedprovider()
17
Thursday 13 September 2012