jaykay-design / cakephp-my-instagram-feed
CakePHP3.x Instagram信息流插件
Requires
- php: >=5.6
- cakephp/cakephp: ^3.4.0
This package is auto-updated.
Last update: 2024-09-29 05:36:01 UTC
README
在CakePHP中展示您的Instagram信息流
目录
安装
您可以使用 composer 将此插件安装到您的CakePHP应用程序中。
运行以下命令
composer require jaykay-design/cakephp-my-instagram-feed
然后您可以使用shell命令加载插件
bin/cake plugin load -b MyInstagramFeed
或者您可以在应用的 config/boostrap.php 文件中手动添加加载语句
Plugin::load('MyInstagramFeed', ['routes' => true]);
或者在 CakePHP >= 3.8 中,在应用的 src/Application.php 文件中添加此语句
public function bootstrap() { ... $this->addPlugin(\MyInstagramFeed\Plugin::class, ['routes' => true]); ...
在 src/View/AppView.php 中添加视图助手
public function initialize() { ... $this->loadHelper('MyInstagramFeed.MyInstagramFeed'); ...
准备
为了获取您的Instagram信息流数据,您需要提供一个客户端ID和客户端密钥。您可以通过为Instagram创建一个Facebook应用来获取这些信息。请按照以下 说明 进行操作。
当被要求提供OAuth回调URL时,输入以下内容:[您的域名]/MyInstagramFeed/OAuth/authorize
配置
默认配置
'MyInstagramFeed' => [ 'client_id' => '', 'client_secret' => '', 'cache_config' => 'default' ],
- client_id (字符串) - 当您 设置 应用时提供的客户端ID
- client_secret (字符串) - 当您 设置 应用时提供的客户端密钥
- cache_config - Instagram信息流数据的缓存配置
基本用法
通常您会在 config/app.php 文件中定义这些键
'MyInstagramFeed' => [ 'client_id' => 'some large number', 'client_secret' => 'a very large string', 'cache_config' => 'default' ],
安装并配置插件后,访问您站点的此页面:[您的域名]/MyInstagramFeed/OAuth,您将看到一个名为“授权”的链接。点击后,您将被告知此应用是否允许访问您的Instagram信息流。同意所有选项。
在您想展示Instagram信息流的模板中添加此代码
<?php $items = $this->MyInstagramFeed->getItems(); foreach ($items as $item) { ?> <a href="<?=$item['permalink']?>"> <img src="<?=empty($item['thumbnail_url']) ? $item['media_url'] : $item['thumbnail_url'] ?>" alt="<?=$item['caption'] ?>" title="<?=$item['caption'] ?>"> </a> <?php } ?>
错误和反馈
https://github.com/jaykay-design/cakephp-my-instagram-feed/issues
许可
版权 (c) 2017 John Caprez
特此授予任何获取本软件及其相关文档副本(“软件”)的人免费处理该软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件副本,并允许有权获得软件的人这样做,但受以下条件约束
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于适销性、特定用途适用性和非侵权性保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任承担责任,无论这些责任是基于合同、侵权或其他原因,无论这些责任是否与软件或软件的使用或其他方式有关。