emanueleminotto / embedly
Library for embed.ly APIs
Installs: 1 456
Dependents: 3
Suggesters: 0
Security: 0
Stars: 2
Watchers: 3
Forks: 0
Open Issues: 0
Requires
- guzzlehttp/guzzle: ~5.2
- guzzlehttp/guzzle-services: 0.5.*
Requires (Dev)
- phpunit/phpunit: ~4.4
- twig/twig: ~1.12
Suggests
- twig/twig: allows Twig extension integration
This package is auto-updated.
Last update: 2024-10-28 06:52:28 UTC
README
Library for embed.ly APIs based on Guzzle 5.
API: emanueleminotto.github.io/Embedly
Install
Install the Embedly library adding emanueleminotto/embedly
to your composer.json or from CLI:
$ composer require emanueleminotto/embedly
Read more about the Composer installation here: getcomposer.org/doc/00-intro.md
Usage
This library provides 3 API: embed.ly/docs/api.
Some APIs need an API key you can set in the constructor os using the setApiKey
method.
The second method of the constructor can be a Guzzle HTTP client to use as an alternative of the default one.
Embed
Options are available at http://embed.ly/docs/api/embed/arguments
For this method the $api_key
can be null.
use EmanueleMinotto\Embedly\Client; $client = new Client($api_key); $embed = $client->oembed([ 'url' => 'http://www.example.com/', ]); // enumerated array containing // arrays like $embed $embeds = $client->oembed([ 'urls' => [ 'http://www.example.com/', 'http://www.google.com/' ] ]);
Extract
Options are available at http://embed.ly/docs/api/embed/arguments
use EmanueleMinotto\Embedly\Client; $client = new Client($api_key); $extracted = $client->extract([ 'url' => 'http://www.example.com/', ]); // enumerated array containing // arrays like $extracted $extracteds = $client->oembed([ 'urls' => [ 'http://www.example.com/', 'http://www.google.com/' ] ]);
Display
The first argument can be NULL, crop
, resize
or fill
.
Options are available at
- http://embed.ly/docs/api/display/endpoints/1/display
- http://embed.ly/docs/api/display/endpoints/1/display/crop
- http://embed.ly/docs/api/display/endpoints/1/display/resize
- http://embed.ly/docs/api/display/endpoints/1/display/fill
Currently the url
attribute is required.
use EmanueleMinotto\Embedly\Client; $client = new Client($api_key); $content = $client->display('resize', [ 'url' => 'http://placehold.it/250x100', 'color' => '000', 'height' => 150, 'width' => 150, ]);
Twig Extension
In this library there's included a Twig extension to allow a simple integration with frameworks.
Functions prefix is: embedly_
, arguments are the same of the methods above.
{{ embedly_oembed({url: 'http://www.example.com'}).title }} {# Example Domain #}