svenpetersen / instagram

资助包维护!
www.paypal.me/svenharders

安装次数: 1,682

依赖项: 1

建议者: 0

安全性: 0

星标: 4

关注者: 2

分支: 3

公开问题: 8

类型:typo3-cms-extension

v3.0.1 2024-09-13 07:49 UTC

README

StandWithUkraine TYPO3 10 TYPO3 11 Latest Stable Version Total Downloads Latest Unstable Version License PHP Version Require

TYPO3 扩展 "instagram"

它做什么?

TYPO3 扩展,用于在 TYPO3 网站中导入和显示 Instagram 帖子和源。

创建并自动刷新长期 API 访问令牌,将 Instagram 源/帖子作为实体导入数据库,并通过前端插件输出源/帖子。

本扩展的 V3.x 使用 "Instagram API with Instagram Login" 应用和 API。V2.x 使用 "Instagram Basic Display API",该 API 将于 2024 年 12 月 4 日达到其 EOL。

功能摘要

  • 后端模块,用于轻松创建长期 API 访问令牌
  • 自动刷新 API 访问令牌以保持其有效
  • 导入多个 Instagram 用户源/帖子
  • 使用官方 "Instagram API with Instagram Login" 访问用户源。
  • 提供命令以刷新访问令牌并导入源
  • 下载帖子(图片/视频)。显示它们时不需要 API 调用=没有前端性能影响。
  • 以任何您喜欢的方式显示用户源/帖子
  • 基于 Extbase 和 Fluid

安装

推荐使用 Composer 安装扩展。在您的基于 Composer 的 TYPO3 项目根目录下,只需执行以下操作:

composer require svenpetersen/instagram

设置

  1. 包含提供的静态 TypoScript
  2. 创建一个 Facebook "Instagram API with Instagram Login" 应用程序:请参阅官方文档以获取分步指南。
  3. 使用此扩展提供的后端模块在 "源" 实体中创建一个 "长期访问令牌"。
  4. 执行命令 instagram:import:posts {username} {storagePid} [limit|25] 从指定用户源导入帖子。
  5. 在页面上添加一个前端插件,以在前端输出导入的帖子。

推荐:

  • 添加一个 cronjob/scheduler 任务以自动刷新 API 访问令牌 - 请参阅“自动访问令牌刷新”以获取详细信息。
  • 添加一个 cronjob/scheduler 任务定期导入帖子。

兼容性

功能

自动导入帖子

此扩展包含一个命令来导入指定 Instagram 用户的(新)帖子。建议定期设置此命令运行 - 例如每天一次。

instagram:import:posts {username} {storagePid} [limit|25] [--since="01/01/2022 00:00:00" --until="12/31/2022 23:59:59"
]

参数

选项

自动访问令牌刷新

生成的长期访问令牌有效期为 60 天。当令牌至少 24 小时时可以刷新。

为了处理访问令牌的自动刷新,此扩展提供了以下命令

instagram:accesstoken:refresh-all

请确保定期运行此命令 - 例如每天通过 cronjob/scheduler 运行一次 - 以保持访问令牌有效。

禁用/启用后端模块 "Token Generator"

要禁用后端模块 - 例如在生成所有必需令牌后 - 请将以下行添加到 LocalConfiguration.php/AdditionalConfiguration.php

$GLOBALS['TYPO3_CONF_VARS']['SYS']['features']['instagram.tokenGeneratorBeModule'] = false;

扩展

附加模板选择器

如果您在插件内部需要某种模板选择器,您可以通过将这些添加到中添加自己的选择

$GLOBALS['TYPO3_CONF_VARS']['EXT']['instagram']['templateLayouts']['myext'] = ['My Title', 'my value'];

保存下载文件的本地路径

默认情况下,所有导入帖子中的图片/视频都保存在 /public/fileadmin/instagram 中。您可以通过扩展设置 local_file_storage_path 选项来更改此路径。

事件

此扩展包含一些事件,您可以监听并添加自己的逻辑。

升级

v2.x 升级到 v3.x

由于“Instagram Basic Display API”将在2024年12月4日达到其生命周期结束,因此生成访问令牌的底层机制发生了变化。现在需要拥有一个“Instagram专业账户”。任何普通Instagram账户都可以通过“个人资料设置”转换为专业账户。

然后您必须使用“Instagram Token Generator”后端模块并重新运行令牌生成过程。然后此扩展将使用新的访问令牌更新您的现有Feed实体。

数据库模型、模板或插件没有任何更改。您现有的所有自定义等将像以前一样工作。

贡献

请参阅包含在本存储库中的贡献文档。

测试

此扩展附带了一套用于编码风格和单元/功能测试的测试套件。要运行测试,只需使用提供的composer脚本来运行。

composer ci:test