cnrp / laravel-instagram-feed
此包最新版本(v1.0.0)没有可用的许可证信息。
为Laravel定制的Instagram动态实现
v1.0.0
2024-07-27 22:16 UTC
Requires
- php: ^8.1
- filament/filament: ^3.2
- illuminate/support: ^10.0
- intervention/image: ^3.0
- livewire/livewire: ^3.0
- spatie/laravel-package-tools: ^1.16.0
README
这是一个用于通过Filament集成获取、存储和显示Instagram动态的Laravel包。该包提供了一个高效的方式来管理您的Laravel应用中的Instagram内容。
功能
- 通过Instagram进行OAuth身份验证
- 支持多个Instagram个人资料
- 获取和存储Instagram动态数据
- 将Instagram帖子及媒体作为Eloquent模型存储
- 在Laravel Filament管理面板中显示和管理Instagram动态
- 自动将图片转换为WebP格式,提高性能
安装
您可以通过composer安装此包
composer require cnrp/laravel-instagram-feed
包将自动注册其服务提供者。
配置
包附带一个默认配置文件。如果您需要自定义这些设置,可以发布配置文件
php artisan vendor:publish --tag="instagram-feed-config"
这将在您的应用程序配置目录中创建一个config/instagram-feed.php
文件。默认配置如下所示
<?php return [ 'client_id' => env('INSTA_CLIENT'), 'client_secret' => env('INSTA_SECRET'), 'redirect_uri' => env('INSTAGRAM_REDIRECT_URI', 'auth/instagram/callback'), 'debug' => [ 'log_info' => env('INSTAGRAM_FEED_LOG_INFO', true), 'log_errors' => env('INSTAGRAM_FEED_LOG_ERRORS', true), ], ];
配置选项
client_id
:您的Instagram API客户端ID。client_secret
:您的Instagram API客户端密钥。redirect_uri
:Instagram身份验证后重定向到的URI。默认为'auth/instagram/callback'。调试
:log_info
:是否记录信息性消息。log_errors
:是否记录错误消息。
请确保在您的.env
文件中设置适当的值
INSTA_CLIENT=your_client_id
INSTA_SECRET=your_client_secret
用法
在Filament管理面板中
此包提供了一个用于管理Instagram动态的Filament页面。您可以在/admin/instagram-manager
访问它。
- 导航到您的Filament管理面板中的Instagram管理器页面。
- 点击“添加新个人资料”以通过Instagram进行身份验证。
- 身份验证后,您可以查看和管理多个Instagram个人资料及其动态。
- 使用“刷新动态”按钮手动更新选定个人资料的动态。
要发布Instagram管理页面样式,请运行以下命令 php artisan filament:assets
程序性使用
您还可以以编程方式使用此包
use CNRP\InstagramFeed\Facades\InstagramFeed; // Get a profile $profile = \CNRP\InstagramFeed\Models\InstagramProfile::find($profileId); // Refresh the feed for a profile InstagramFeed::refreshFeed($profile); // Get the feed for a profile $feed = InstagramFeed::getFeed($profile);
模型
该包提供了以下Eloquent模型
InstagramProfile
:表示已验证的Instagram个人资料InstagramPost
:表示单个Instagram帖子InstagramMedia
:表示与帖子关联的媒体(图片/视频)
您可以使用标准的Eloquent操作与这些模型进行交互。
WebP转换
当存储时,图片自动转换为WebP格式,从而提高加载时间并优化存储使用。
计划中的功能
- 计划刷新身份验证令牌和获取动态
- 批量调用api/download
- 可定制的前端组件
- 可配置的压缩设置/禁用转换
- 隐藏帖子
许可证
此包是开源软件,许可证为MIT许可证。
支持
如果您遇到任何问题或有任何疑问,请在GitHub上创建问题。