beewilly / form-element-linked-text
添加一个新的表单元素,允许编辑器创建带链接标签的文本。这是TYPO3 CMS的一个扩展。
Requires
- php: ^7.4 || ^8.0
- symfony/polyfill-php80: ^1.15
- typo3/cms-core: ^12.4
- typo3/cms-form: ^12.4
- typo3/cms-frontend: ^12.4
Requires (Dev)
- armin/editorconfig-cli: ^1.5
- ergebnis/composer-normalize: ^2.23
- helmich/typo3-typoscript-lint: ^3.1
- phpstan/phpstan: ^1.3
- saschaegerer/phpstan-typo3: ^1.0
- typo3/coding-standards: ^0.7.1
This package is auto-updated.
Last update: 2024-09-23 17:22:21 UTC
README
[ ṯeufels ] 自定义表单元素 "链接文本"
此TYPO3扩展向TYPO3表单框架添加了一个自定义表单元素“链接文本”。用户可以定义链接目标和链接文本。
基于扩展 https://extensions.typo3.org/extension/form_element_linked_text
此版本支持TYPO3
Composer支持
composer req teufels/form-element-linked-text
如何使用(快速指南)
- 使用composer安装
- (可选)在站点包之前导入静态模板
- 将自动导入 - 在有问题时,请在此EXT设置中禁用此功能,并手动导入
定制
该扩展覆盖以下视图的模板
- 接收者的电子邮件,纯文本
- 接收者的电子邮件,HTML
- 发送者的电子邮件,纯文本
- 发送者的电子邮件,HTML
- 摘要页面
这是正确渲染链接所必需的。默认情况下,表单框架的核心模板在电子邮件和纯文本邮件中都转义任何HTML。因此,您的用户会收到带有损坏链接的邮件。
如果您还覆盖了这些模板,请相应地修改您的文件。
使用方法
打开TYPO3表单编辑器并创建一个新的表单/打开现有的表单。向您的表单添加一个新的元素。模态框将列出新的自定义表单元素“链接文本”。为静态文本(包括链接文本)提供一个标签。选择您想要链接到的页面。
标签和链接的组合
默认标签由标签本身组成,后面跟有一个指向指定页面的链接,链接文本由给定文本指定。
示例
- 标签:
我接受
- 链接文本:
条款和条件。
- 输出:
我接受 <a href="/terms" target="_blank">条款和条件</a>
如果想要在标签中使用链接,请使用字符替换在标签中定义链接位置。我们强烈推荐
这种方法。
示例
- 标签:
我已经阅读了%s并接受它们。
- 链接文本:
条款和条件
- 输出:
我已经阅读了 <a href="/terms" target="_blank">条款和条件</a> 并接受它们。
您还可以在文本标签中使用多个链接。为此,只需使用字段additionalLinks
并提供页面UID和链接文本的组合。
示例
- 标签:
我已经阅读了%s和%s并接受它们。
- 链接文本:
条款和条件
- 附加链接
隐私政策
- 输出:
我已经阅读了 <a href="/terms" target="_blank">条款和条件</a> 和 <a href="/privacy-policy" target="_blank">隐私政策</a> 并接受它们。
链接配置
您可以提供额外的链接配置,该配置将在生成标签内的链接时使用。请注意,这只能在适当的.form.yaml
文件中定义,但不能在表单编辑器中定义,并适用于所有生成的链接。
type: LinkedText
identifier: consent
label: 'I accept the %s and %s.'
properties:
pageUid: '67'
linkText: 'terms and conditions'
additionalLinks:
83: 'privacy policy'
renderingOptions:
linkConfiguration:
# Additional typolink configuration can be inserted here, e.g.:
no_cache: 1
有关可用配置的完整列表,请参阅TypoScript参考。
覆盖默认链接目标
默认情况下,链接目标是设置为 _blank
。如果您想覆盖它,只需定义一个自定义链接配置 参数
- 可以是空字符串或自定义目标/附加参数配置
renderingOptions:
linkConfiguration:
parameter: ''
可能的改进或更改
而不是创建一个新的表单元素,现有的 文本
表单元素可以被扩展。为了提供一个更复杂的例子,扩展创建了一个新的元素。
在编写本文档时,您必须提供一小段 JavaScript 代码(见 \Resources\Public\JavaScript\Backend\FormEditor\ViewModel.js
)。此代码片段用于在表单编辑器中显示自定义表单元素。对于未来的 TYPO3 版本,我们致力于移除这一障碍,以简化元素注册。
版本
新闻 | TYPO3 | PHP | 备注 |
---|---|---|---|
主要 | 12 | 7.4 - 8.2 | |
2.x | 12 | 7.4 - 8.2 | "teufels/form-element-linked-text" |
1.x | 11 | 7.4 - 8.2 | "beewilly/form-element-linked-text" |
破坏性更改
- [!!!][更改] 供应商从 HIVE 更改为 T3teufels
- [!!!][更改] composer 名称从
"beewilly/form-element-linked-text"
更改为"teufels/form-element-linked-text"
从 beewilly/form-element-linked-text 更新和迁移
- 在 composer.json 中将
beewilly/form-element-linked-text
替换为"teufels/form-element-linked-text":"^2.0"
- Composer 更新
- 如果字段设置中缺少 BE 标签,则在站点包中的 BasicFormSetup.yaml 文件行 [13] 添加
2687159009: 'EXT:form_element_linked_text/Resources/Private/Language/Database.xlf'
鸣谢
TYPO3 扩展 "form_element_linked_text" 由 Björn Jacob 创建,本扩展基于此扩展。