ayacoo / tiktok
提供Tiktok在线媒体助手
Requires
- php: >=8.1 < 8.4
- typo3/cms-core: ^12.4
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.49.0
- helmich/typo3-typoscript-lint: ^3.1.0
- phpstan/extension-installer: ^1.3.1
- phpstan/phpstan: ^1.10.57
- phpstan/phpstan-phpunit: ^1.3.15
- phpstan/phpstan-strict-rules: ^1.5.2
- phpunit/phpunit: ^10.5
- saschaegerer/phpstan-typo3: ^1.10.0
- squizlabs/php_codesniffer: ^3.8.1
- symfony/console: ^5.4 || ^6.4 || ^7.0
- symfony/translation: ^5.4 || ^6.4 || ^7.0
- typo3/coding-standards: ^0.5.5
- typo3/testing-framework: ^8
README
1 功能
- 可以将Tiktok视频作为文件添加到TYPO3文件列表中
- 可以使用媒体元素将Tiktok视频与文本一起使用和输出
- 通过文件列表动作或命令更新元数据
2 使用方法
2.1 安装
使用Composer安装
推荐使用Composer安装扩展。
在基于Composer的TYPO3项目中运行以下命令
composer require ayacoo/tiktok
2.2 TypoScript设置
隐私
使用plugin.tx_tiktok.settings.privacy = 1
可以确保IFrame使用data-src而不是src。如果您需要更多选项来影响HTML,可以使用PSR-14事件。
2.3 提示
表情符号
为了更好的兼容性,标题或描述中已移除表情符号。
输出
输出时,直接使用Tiktok提供的HTML。
SQL更改
为了不永久访问oEmbed界面,在sys_file_metadata表中添加了四个字段
3 开发者角
3.1 ModifyTiktokOutputEvent
如果您想修改Tiktok HTML的输出,可以使用ModifyTiktokOutputEvent
。
EventListener注册
在您的扩展中,扩展一次Configuration/Services.yaml
Vendor\ExtName\EventListener\TiktokOutputEventListener: tags: - name: event.listener identifier: 'tiktok/output' event: Ayacoo\Tiktok\Event\ModifyTiktokOutputEvent
<?php namespace Vendor\ExtName\EventListener; use Ayacoo\Tiktok\Event\ModifyTiktokOutputEvent; class TiktokOutputEventListener { public function __invoke(ModifyTiktokOutputEvent $event): void { $output = $event->getOutput(); $output = str_replace('src', 'data-src', $output); $event->setOutput($output); } }
3.2 后端预览
在后端,预览由TextMediaRenderer使用。对于在线媒体,这仅显示提供商的图标,在本例中是tiktok。如果您想显示缩略图,例如,您需要一个自己的渲染器,它覆盖Textmedia。项目中有可用的示例渲染器。注意:这覆盖了所有文本媒体元素,因此仅将此渲染器作为基础使用。
您在TCA Configuration/TCA/Overrides/tt_content.php
中使用$GLOBALS['TCA']['tt_content']['types']['textmedia']['previewRenderer'] = \Ayacoo\Tiktok\Rendering\TiktokPreviewRenderer::class;
注册一个渲染器
4 管理角
4.1 版本和支持
4.2 发布管理
tiktok使用语义版本控制,这意味着
- 错误修复更新(例如1.0.0 => 1.0.1)仅包括小的错误修复或与安全相关的内容,而不引入破坏性更改,
- 次要更新(例如1.0.0 => 1.1.0)包括新功能和较小的任务,而不引入破坏性更改,
- 以及 主要更新(例如1.0.0 => 2.0.0)引入破坏性更改,这些更改可以是重构、功能或错误修复。
4.3 贡献
拉取请求非常欢迎!尽管如此,请别忘了添加一个问题和将其连接到您的拉取请求。这非常有帮助,可以了解PR将要解决哪种问题。
错误修复:请描述您的修复解决了哪种类型的错误,并给我们提供如何重现问题的反馈。我们将只接受我们可以重现的问题的错误修复。
5 感谢/通知
- 特别感谢Georg Ringer和他的news扩展。这是一个构建TYPO3扩展的好模板。例如,这里使用了README.md的结构。
- 还要感谢b13提供的在线媒体更新器扩展。其部分功能被允许包含在此扩展中。
6 支持功能
如果您对扩展感到满意并希望以任何方式支持它,我将非常感激社会机构的支持。