1.11.3releasedoEmbed Field
Easily embed videos/images from ANY* website that implements the oEmbed format. See http://oembed.com. Supported services: - Vimeo - Youtube - Dailymotion - Twitter - Instagram - Facebook - Embed.ly - Iframely - Flickr - Qik - Viddler - SlideShare - Soundcloud - Mixcloud
Clone URLhttps://github.com/Solutions-Nitriques/oembed_field.git
Add as a submodulegit submodule add https://github.com/Solutions-Nitriques/oembed_field.git extensions/oembed_field --recursive
Compatibility
2.x.x | 2.1.x | 2.2.x | 2.3.x | 2.4.x | 2.5.x | 2.6.x | 2.7.0 | 2.7.1 | 2.7.2 | 2.7.3 | 2.7.4 | 2.7.5 | 2.7.6 | 2.7.7 | 2.7.8 | 2.7.9 | 2.7.10 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
No | No | No | 1.8.9 | 1.8.9 | 1.11.3 | 1.11.3 | 1.11.3 | 1.11.3 | 1.11.3 | 1.11.3 | 1.11.3 | 1.11.3 | 1.11.3 | 1.11.3 | 1.11.3 | 1.11.3 | 1.11.3 |
Readme
Field: oEmbed
Version: 1.11.x
Easily embed videos/images from ANY* website that implements the oEmbed format
@see http://oembed.com
SPECS
- Adds a field that takes as input the link to the page that has the embeded media
- Caches the oEmbed XML info into the database
- Easily incorporate this XML via your Data Sources
- Refreshes the info each time the entry is saved
- *Currently supported services:
- Vimeo (http/https)
- Youtube (https/https)
- Dailymotion (http/https)
- Twitter (http/https)
- Instagram (http/https)
- Facebook (http/https)
- Embed.ly (http/https) * Non-native (requires an account to get the key)
- Iframely (http/https) * Non-native
- Flickr (http/https)
- Qik (http)
- Viddler (http)
- SlideShare (http)
- Soundcloud (http/https)
- Mixcloud (http/https)
- Noembed (http) * Non-native
- Yours... Anybody can add a service!
Just fork, code the missing Service Driver and request a pull!
REQUIREMENTS
- Symphony CMS version 2.5.0 and up (as of the day of the last release of this extension)
INSTALLATION
git clone
/ download and unpack the tarball file- (re)Name the folder oembed_field
- Put into the extension directory
- Enable/install just like any other extension
See http://www.getsymphony.com/learn/tasks/view/install-an-extension/
Voila !
HOW TO USE
- After installation, add a oEmbed field to a section
- Configure the field
- Select at least one supported driver
- You can add extra parameters to the oEmbed request's query string: this is usefull for settings embed sizes
- All the data will be available as xml in a datasource
- Use the
oembed
tag for embeding the resource into your frontend
Non-native
"Non-native" solutions like embed.ly are tested after all other "native" solutions. This will allow you to enable both natives solution while being able to revert to a global fallback. If other non-native solutions are added, please do not enable more than one because this may cause un-wanted behavior.
TODO
- Adds a auto-refresh data mechanism
- Automatically add sites in the JIT authorized sites (for thumbnail and image services)
- Add MySpace driver: Waiting for MySpace to complete their oEmbed service
- Add Cinemagram driver: Waiting for Cinemagram to complete their oEmbed service
- Add Issuu driver: Waiting for Issuu to complete their oEmbed service
- Add UStream driver: Waiting for UStream to complete their oEmbed service
CREDITS
Come say hi! -> https://deuxhuithuit.com/
And thanks to everybody that added ServiceDrivers, reported bugs or submitted any improvements !
LICENSE
MIT. See the LICENSE file or http://deuxhuithuit.mit-license.org
Version history
Symphony 2.5.0 to 2.x.x
- Fix a PHP warning: CURLOPT are constants
- Fix error in PHP 5.3: curl_strerror is 5.4+
Symphony 2.5.0 to 2.x.x
- Fix a problem with the Instagram driver
- Added bigger timeout for http requests
- Show curl error messages
Symphony 2.5.0 to 2.x.x
- Fixed problems with amperstands in the url, when url is used as id
- The Soundcloud driver now issues TLS requests
- The Vimeo driver now issues TLS requests
- The Youtube driver now issues TLS requests
- The Flickr driver now supports TLS
Symphony 2.5.0 to 2.x.x
- Added Facebook driver
Symphony 2.5.0 to 2.x.x
- PHP 7 Support (Thanks @ChoboHub)
- Fixed problems with Twitter driver #56 (Thanks @finferflu)
- SSL (TLS) support for Instagram and Dailymotion
Symphony 2.5.0 to 2.x.x
- Updated compatibility infos
- Fixed Instagram embed code
- Updated Twtter to use new endpoint and handle json responses
- Added the Noembed non-native driver
- Added links to services in the publish panel
Symphony 2.3 to 2.6.x
- Make the js compatible with multilingual version
Symphony 2.3 to 2.6.x
- Use FieldManager::saveSettings instead of raw SQL in commit
- Make checkUniqueness protected
Symphony 2.3 to 2.6.x
- UI fix in publish page: add a space between drivers so it wraps properly
Symphony 2.3 to 2.6.x
- Fix for Iframely: Their oEmbed API endpoint changed
Symphony 2.3 to 2.6.x
- Fix for Symphony 2.5+ (Error method in Widget class as been renamed)
Symphony 2.3 to 2.5.x
- Update for Symphony 2.5
Requires Symphony 2.3
- Added the Mixcloud driver (Thanks @arthurmingard)
Requires Symphony 2.3
- Added the Soundcloud driver (Thanks @twiro)
Requires Symphony 2.3
- Fixed Issue #43
Requires Symphony 2.3
- Added unique key on
entry_id
andfield_id
Requires Symphony 2.3
- Fix the issue with the unique option that was used for two seperated things.
Requires Symphony 2.3
- Added Iframely.com driver
Requires Symphony 2.3
- Fixed Issue #42
Requires Symphony 2.3
- Normalizing DS ouput to always be named
oembed
. This introduce a breaking change in DS output versus previous versions - Added Instagram driver, first driver usign json as format - covers issue #15 as well
- Fixed a bug in the embed protocols (output if the setting is on AND if the driver supports it)
- Fixed Issue #36
- Fixed Issue #40
- Fixed Issue #41
- Reviewed Issue #35
- Added Polish translation
- Added Twitter driver
- Added Embed.ly driver (if you wish to add you key, do so in the query params option) See also the note in the README about the "non-native" solutions. Fixes Issue #38
Requires Symphony 2.3
- Added Russian translation
- Added SSL support for some drivers via protocol-less embedding (fixes #33)
- Added a new XML node in the DS, which lists supported protocols
- Added a basic JSON parser
- Fixed issue #35 when duplicating a section
Requires Symphony 2.3
- Minor bug fixes (#23, #26, #27)
Requires Symphony 2.3
- Made compatible with Symphony 2.3
- Added Slideshare driver
- Added Oembed Content field for Rowan Lewis' Content Field extension
Symphony 2.2.5 only
- Issue #22 fixed
- Major code review, adding more toughness to the code
- Added a new class, which will enable working with services that only provides JSON
- Fix issues #10, #11, #19, #15, #20
- Refactored the request url parameters feature: You can add values to the oEmbed query string
- YouTube driver fix for the shorten domain (part of issue #19)
- Added the
show thumbnails in table
parameter: if disabled, title or url will be used - Changes between the two branches (master and dev) are now synced
- Added the Twitter Driver :) Thanks @briandrum !
- Added assets for the blueprints>section pages
- Added the 'unique' option - url can now be unique across a section
- Added Dailymotion, Qik (fix issue #9) and Viddler drivers (thanks Andrew!, pull request #8)
- Improved comments (a lot!)
- Fix a typo (issue #6)
- Added support for image (thumbnail) in table view (do not forget to add those site in JIT)
- Refactored how the drivers are managed in the ServiceDispatcher (issue #10)
- Public methods to get drivers and drivers names
- Drivers are now all loaded by default
- Drivers filename must now respect the
class.service[a-zA-Z0-9]+.php
regular expression - Drivers are now listed in section field and publish page
- Improved error management - Added a ref flag for that in the public method
- Added a method that permit change of the root tag name in the oEmbed response
- Update the YouTube driver to 1.2 - Fix when the entered url contains a #
- Update the YouTube driver to 1.1 - Fix the width when the field is in the sidebar
- Update for Symphony 2.2.2 compatibility (do not need to check for the $simulate value as it seems to be always true)
- Couple of bug fixes
- Adapted the code so oEmbed resources in the sidebar displays correctly
- Added YouTube
- First release
- This release has never been stable
- Minor bug fixes
- Added the
oembed requests parameters sets
field's setting (issue #11) ([see how it work]) (@deprecated) - Fixed a lot of typos (thanks @brando)
- Tables now uses utf_8 and MyISAM
- Refactored the drivers: They are now more easy to implement
- Changes between the two branches (master and dev) are now synced