这应该是一个简单的TypoScript问题:我想为FAL图像定义一个回退字段。应从添加到名为ogimage的页面表的自定义字段中接收默认图像。如果此字段中没有图像,则应从媒体字段接收图像。这就是我试图让它发挥作用的方式 - 我评论了不同的非工作方法:
page.meta.og:image {
cObject = FILES
cObject {
references {
table = pages
uid.field = uid
fieldName = media
#fieldName.field = ogimage // media
#fieldName.override = ogimage
#fieldname.override.required = 1
#fieldName.override.if.isTrue.field = ogimage
#fieldName.override.if.isTrue.data = page:ogimage
}
renderObj = IMG_RESOURCE
renderObj {
stdWrap.prepend = TEXT
stdWrap.prepend {
data = getIndpEnv: TYPO3_REQUEST_HOST
wrap = |/
}
file.import.data = file:current:publicUrl
file.maxW = 1500
}
}
}
任何想法如何解决这个问题?
昨天,我们遇到了同样的问题,你的问题激发了我的灵感。你已经非常接近解决方案了。这应该工作:
page.meta.og:image {
cObject = FILES
cObject {
references {
table = pages
uid.field = uid
fieldName = ogimage
fieldName.override = media
fieldName.override.if.isFalse.field = ogimage
}
...
}
}
由于fieldName只包含字段的名称,因此没有图像引用或类似的东西。它只是一个字符串,但是 - 正如您所尝试的那样 - 该属性是stdWrap-able。因此覆盖提供了替代字段名称。这仅适用于您的自定义字段为空(“0”表示它没有对sys_file_references的引用)。