bnomei / kirby3-instagram
此包已被弃用且不再维护。未建议替代包。
Kirby 3 插件,用于调用 Instagram API 端点
1.2.0
2019-08-26 10:20 UTC
Requires
- php: >=7.2.0
- getkirby/composer-installer: ^1.1
Requires (Dev)
- getkirby/cms: ^3.2
- nunomaduro/phpinsights: ^1.8
- php-coveralls/php-coveralls: ^2.1
- phpunit/phpunit: ^8.3
Suggests
- bnomei/kirby3-dotenv: To load the token from an .env file
- bnomei/kirby3-janitor: Use a Panel Button or PHP code to clear the cache
README
Kirby 3 插件,用于调用 Instagram(或任何其他)API 端点
商业用途
此插件免费,但如果您将其用于商业项目,请考虑
安装
- 解压 master.zip 到文件夹
site/plugins/kirby3-instagram
或 git submodule add https://github.com/bnomei/kirby3-instagram.git site/plugins/kirby3-instagram
或composer require bnomei/kirby3-instagram
设置
您可以在配置中设置令牌。
site/config/config.php
return [ // other config settings ... 'bnomei.instagram.token' => 'YOUR-TOKEN-HERE', ];
如果您使用 dotenv 插件,也可以设置回调。
site/config/config.php
return [ // other config settings ... 'bnomei.instagram.token' => function() { return env('INSTAGRAM_TOKEN'); }, ];
用法
site/templates/default.php
<?php // default. this will cause loading from the config file or set it here... $token = null; $token = 'YOUR-TOKEN-HERE'; $endpoint = 'users/self/media/recent'; $params = [ 'count' => 4 ]; $force = null; // default. this will cause refresh on global debug == true // $force = true; // always force refresh foreach(site()->instagram($token, $endpoint, $params, $force) as $data) { echo Kirby\Toolkit\Html::img( $data['images']['standard_resolution']['url'] ); }
提示:所有
site()->instagram()
函数参数都是可选的,如果它们的值在配置中已设置。
任何 API
由于您可以配置 api-url
、endpoint
和 json-root
数据元素,因此您可以查询任何想要的 API,而不仅仅是 Instagram。
$inst = new Bnomei\Instagram([ 'token' => null, 'api' => 'https://repo.packagist.org/', 'endpoint' => 'p/bnomei/kirby3-instagram.json', 'json-root' => 'packages', ]); $data = $inst->api()['bnomei/kirby3-instagram']['1.2.0']['authors'][0]['name']; // Bruno Meilick
提示:由于
params
可以是一个回调,您可以转发任何想要的数据,甚至可以从 .env 文件中转发。尽情发挥吧!
缓存
此插件具有缓存,除非全局 debug
选项已设置或您设置了 $force
刷新,因为 Instagram API 如果在短时间内发送大量请求将停止工作。
设置
bnomei.instagram. | 默认值 | 描述 |
---|---|---|
expire | 60*24 |
分钟。 0 将永远不过期(即永远)。 |
token | null |
您可以添加一个默认令牌 |
api | https://api.instagram.com/v1 |
|
endpoint | users/self/media/recent |
您可以更改默认端点 |
params | [] |
您可以更改 API 的默认参数 |
json-root | data |
节点以解开 JSON 响应 |
提示:所有设置参数都可以是回调。示例请参见 使用 DotEnv 设置。
免责声明
此插件“按原样”提供,不提供任何保证。自行承担使用风险,并在将其用于生产环境之前始终自行测试。如果您发现任何问题,请 创建新问题。
许可证
不建议在任何宣扬种族主义、性别歧视、恐同症、动物虐待、暴力或其他任何形式仇恨言论的项目中使用此插件。