首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TYPO3 - f:link.typolink有additionalAttributes和条件?

TYPO3 - f:link.typolink有additionalAttributes和条件?
EN

Stack Overflow用户
提问于 2022-01-22 17:35:27
回答 3查看 589关注 0票数 1

我正在寻找一个解决方案,如何在additionalAttributes中包含一个查询?

静态:

代码语言:javascript
复制
<f:link.typolink parameter="{field.referenceLink}" title="{field.referenceTitel} - {field.referenceText}" additionalAttributes="{rel:'nofollow'}">
    Link
</f:link.typolink>

条件:

代码语言:javascript
复制
<f:variable name="nofollow"><f:if condition="{field.referenceLinkNofollow}"><f:then>{rel:'nofollow'}</f:then><f:else>{rel:'dofollow'}</f:else></f:if></f:variable>

下一次测试:

代码语言:javascript
复制
<f:section name="nofollow">
    <f:spaceless><f:if condition="{field.referenceLinkNofollow}"><f:then>{rel:'nofollow'}</f:then><f:else>{rel:'dofollow'}</f:else></f:if></f:spaceless>
</f:section>

不像这样工作:

代码语言:javascript
复制
<f:link.typolink parameter="{field.referenceLink}" title="{field.referenceTitel} - {field.referenceText}" additionalAttributes="{nofollow}">
    Link
</f:link.typolink>

错误:

参数"additionalAttributes“已用”additionalAttributes“类型注册,但在视图助手additionalAttributes中为"string”类型。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2022-01-23 07:49:03

一种选择可以是:

代码语言:javascript
复制
<f:variable name="nofollow" value="{f:if(condition: '{data.no_follow}', then: 'nofollow', else: '')}" />
<f:link.typolink parameter="https://example.com" title="Title" additionalAttributes="{rel: '{nofollow}'}">
  Link
<f:link.typolink>

让我们假设变量{data.no_follow}表示后端用户可以更改页面属性的设置(“跟随此页面”)。

第一行根据页面属性设置将流体模板中的变量nofollow设置为值'nofollow''' (空)。我使用了If-ViewHelper的内联表示法来实现这一点。然后在LinkTypolink-ViewHelper中使用变量{nofollow}作为rel=属性在additionalAttributes下的值。

当空值被删除时,只有当rel=属性有值时,才会显示它。

票数 2
EN

Stack Overflow用户

发布于 2022-01-23 14:55:00

如果{field.referenceLink}和{field.referenceLinkNofollow}包含所需数据,则此操作也应有效。

代码语言:javascript
复制
    <f:link.typolink parameter="{field.referenceLink}"
                     additionalAttributes="{f:if(condition: '{field.referenceLinkNofollow}', then: '{rel:'nofollow'}')}"
    >Linktext</f:link.typolink>
票数 2
EN

Stack Overflow用户

发布于 2022-01-23 21:30:08

谢谢,很管用!

代码语言:javascript
复制
<f:variable name="nofollow" value="{f:if(condition: '{field.referenceLinkNofollow}', then: 'nofollow', else: '')}" />

流体:

代码语言:javascript
复制
<f:link.typolink parameter="{field.referenceLink}" title="{field.referenceTitel}" additionalAttributes="{rel: '{nofollow}'}">
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70815416

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档