TYPO3 9.5 Powermail中含空格的德语选项在CASE语句中的用法问题
TYPO3 9.5 Powermail中含空格的德语选项在CASE语句中的用法问题
嗨,我来帮你搞定这个问题~你遇到的情况其实很典型:TypoScript的标识符默认是不能包含空格或者特殊字符的,所以直接写Daten ändern = TEXT会被解析器当成两个独立的标识符,自然没法正常工作。
这里给你两种可行的解决方案,第一种最直接好用:
方案一:用引号包裹带空格的键
当你的CASE键包含空格、德语变音符号这类特殊字符时,只需要把键用单引号或双引号括起来,TypoScript解析器就会把它当作一个完整的字符串键来处理。修改后的完整代码如下:
lib.salutation = CASE lib.salutation { key.field = 0 Herr = TEXT Herr.value = Sehr geehrter Herr Herr.noTrimWrap = || | Frau = TEXT Frau.value = Sehr geehrte Frau Frau.noTrimWrap = || | 'Daten ändern' = TEXT 'Daten ändern'.value = Daten ändern bla bla 'Daten ändern'.noTrimWrap = || | }
注意引号前后要保持一致,单引号或双引号都可以,这样就能正确匹配表单里选中的「Daten ändern」选项了。
方案二:使用选项的内部值(可选)
如果你的Webform里,「Daten ändern」这个选项对应的实际提交值是无空格的(比如在表单设置里,选项标签是「Daten ändern」,但提交值设为daten_aendern或者某个数字),那你也可以直接用这个内部值作为CASE的键,比如:
daten_aendern = TEXT daten_aendern.value = Daten ändern bla bla daten_aendern.noTrimWrap = || |
不过这种方法需要你先确认表单选项的实际提交值,不如第一种方法直观直接。
总的来说,方案一是最推荐的解决方式,只需要给带空格的键加上引号就能轻松搞定啦!
备注:内容来源于stack exchange,提问作者user3759978
相关产品推荐
相关产品推荐

