drmonkeyninja/cakephp-tmdb

CakePHP TMDB API 集成

安装: 44

依赖: 0

建议者: 0

安全: 0

星标: 4

关注者: 4

分支: 1

公开问题: 1

类型:cakephp-plugin

3.1.1 2018-08-06 19:55 UTC

This package is auto-updated.

Last update: 2024-09-07 15:38:25 UTC


README

License Build Status

此 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]); ?>