drmonkeyninja / cakephp-tmdb
CakePHP TMDB API 集成
3.1.1
2018-08-06 19:55 UTC
Requires
- cakephp/cakephp: ~3.0
- muffin/webservice: ^1.3
- php-tmdb/api: ^2.1
This package is auto-updated.
Last update: 2024-09-07 15:38:25 UTC
README
此 CakePHP 3 插件提供与 TMDB API 的集成,用于从 themoviedb.org 获取电影和电视节目数据。它利用了一个已建立的 TMDB API 包装器 和 CakePHP 的 Webservice 插件。
要求
- CakePHP 3.x
- 有效的 TMDB API 密钥
安装
使用 composer 安装: composer require drmonkeyninja/cakephp-tmdb:3.0.*
然后,将以下行添加到 bootstrap.php 中以加载插件
Plugin::load('Muffin/Webservice'); Plugin::load('CakeTmdb');
配置
您需要在 config/app.php 中使用您的 TMDB API 密钥配置一个新的 webservice
'Webservices' => [ 'Tmdb' => [ 'className' => 'Muffin\Webservice\Connection', 'service' => 'CakeTmdb\Lib\Tmdb\Driver\Tmdb', 'api_key' => 'your_tmdb_api_key' ] ]
然后在 bootstrap.php 中指示 ConnectionManager
使用 webservice
ConnectionManager::setConfig(Configure::consume('Webservices'));
使用方法
此插件使用 TMDB API 库,因此您可以完全访问那里提供的所有方法。
例如,搜索标题为 '玩具总动员' 的电影
$tmdb = \Cake\Datasource\ConnectionManager::get('Tmdb'); $data = $tmdb->getSearchApi()->searchMovies('Toy Story');
TmdbHelper
插件附带了一个方便的小助手,用于使用 API 返回的路径渲染 TMDB 图片。要使用,像通常一样在控制器中包含 Tmdb
助手:
public $helpers = ['CakeTmdb.Tmdb'];
然后在您的视图中:
<?= $this->Tmdb->image($movie->poster, 'w154'); ?>
第一个参数需要是图像路径(由 TMDB 提供);第二个参数是 TMDB 大小。您还可以传递一个可选的图像属性数组作为第三个参数:
<?= $this->Tmdb->image($movie->poster, 'w154', ['alt' => $movie->title]); ?>