如何在 TYPO3 9.5 中使用 f:link.typolink viewhelper 将 link-title 设置为链接文本
How to set the link-title as Linktext with f:link.typolink viewhelper in TYPO3 9.5
我已经从字段 "header_link".
构建了一个带有 link 的自定义内容元素
如何将 link 的标题设置为 link 文本?
在流体模板中,我以这种方式使用 link.typolink viewhelper:
<f:link.typolink parameter="{data.header_link}" class="btn btn-primary" />
这导致
<a href="/page" title="link title" class="btn btn-primary">Page Title</a>
如何将 link 标题设置为 link 文本而不是页面标题?
<f:link.typolink parameter="{data.header_link}" title="Title Attribute">
Custom Link Text
</f:link.typolink>
结果
<a href="/page" title="Title Attribute">
Custom Link Text
</a>
参考
更新 1
(根据其他评论更新)
组合参数字符串 t3://page?uid=123 - - "title"
(parameter
target
class
title
additional parameters
) 应该只对生成锚点有影响标签。没有开箱即用的方法可以将 title
部分用作 Fluid 模板中的变量。
为此,必须创建自定义 ViewHelper,例如
class ParameterPartViewHelper extends AbstractViewHelper
{
public function initializeArguments()
{
$this->registerArgument('part', 'string', 'Parameter part to be extracted', true);
}
public function render(): string
{
$part = $this->arguments['part'] ?? null;
$typoLinkCodec = GeneralUtility::makeInstance(TypoLinkCodecService::class);
return $typoLinkCodes->decode($this->renderChildren())[$part] ?? '';
}
可以在 Fluid 中使用,例如像这样
<f:link.typolink parameter="{data.header_link}" title="Title Attribute">
{data.header_link -> my:parameterPart(part:'title')}
</f:link.typolink>
从 TYPO3 10.3 开始可以这样做
<f:link.typolink parameter="{data.header_link}" class="btn btn-primary" parts-as="parts">
{parts.title}
</f:link.typolink>
中阅读更多内容
这些都是你可以使用的部分
<f:link.typolink parameter="123 _top news title" parts-as="parts">
{parts.url}
{parts.target}
{parts.class}
{parts.title}
{parts.additionalParams}
</f:link.typolink>
我已经从字段 "header_link".
构建了一个带有 link 的自定义内容元素如何将 link 的标题设置为 link 文本?
在流体模板中,我以这种方式使用 link.typolink viewhelper:
<f:link.typolink parameter="{data.header_link}" class="btn btn-primary" />
这导致
<a href="/page" title="link title" class="btn btn-primary">Page Title</a>
如何将 link 标题设置为 link 文本而不是页面标题?
<f:link.typolink parameter="{data.header_link}" title="Title Attribute">
Custom Link Text
</f:link.typolink>
结果
<a href="/page" title="Title Attribute">
Custom Link Text
</a>
参考
更新 1
(根据其他评论更新)
组合参数字符串 t3://page?uid=123 - - "title"
(parameter
target
class
title
additional parameters
) 应该只对生成锚点有影响标签。没有开箱即用的方法可以将 title
部分用作 Fluid 模板中的变量。
为此,必须创建自定义 ViewHelper,例如
class ParameterPartViewHelper extends AbstractViewHelper
{
public function initializeArguments()
{
$this->registerArgument('part', 'string', 'Parameter part to be extracted', true);
}
public function render(): string
{
$part = $this->arguments['part'] ?? null;
$typoLinkCodec = GeneralUtility::makeInstance(TypoLinkCodecService::class);
return $typoLinkCodes->decode($this->renderChildren())[$part] ?? '';
}
可以在 Fluid 中使用,例如像这样
<f:link.typolink parameter="{data.header_link}" title="Title Attribute">
{data.header_link -> my:parameterPart(part:'title')}
</f:link.typolink>
从 TYPO3 10.3 开始可以这样做
<f:link.typolink parameter="{data.header_link}" class="btn btn-primary" parts-as="parts">
{parts.title}
</f:link.typolink>
中阅读更多内容
这些都是你可以使用的部分
<f:link.typolink parameter="123 _top news title" parts-as="parts">
{parts.url}
{parts.target}
{parts.class}
{parts.title}
{parts.additionalParams}
</f:link.typolink>