所以这是我的问题:一旦在powermail中选中了一个特定的复选框,我就试图输出一个额外的文本。
选择字段包含多个选项,当然所有选项都可以选择,但是当检查字段1时,发件人应该在邮件中添加标准文本加上“Lorem ipsum”,但是当未选中该字段时,应该有根本没有额外的输出。
我可以根据单个选择/下拉菜单的选择找到改变文本的解决方案,它就像魅力一样,但由于某种原因,多选不起作用。我无法弄清楚为什么有人可以提供帮助。
TS:
lib.serverex = CASE
lib.serverex {
key.data = GP:tx_powermail_pi1|field|produktang|1
key.intval = 1
1 = TEXT
1.value = Lorem Ipsum
#Default
default = TEXT
default.value =
}
powermail中的电子邮件如下所示:
Some standard text...
{f:cObject(typoscriptObjectPath:'lib.serverex', data:'{produktang}')}
表单内的复选框配置(id:produktang):
first product | 1
second product | 2
third product | 3
fourth product | 4
fifth product | 5
无论输入是什么/选中框是什么,或者它根本不发送附加文本,它都会附加它。我可能在这里遗漏了一些东西。
提前致谢!
答案 0 :(得分:0)
field {produktang}的结果是一个数组(当然因为它是一个复选框)。所以你必须找出你的案例中是否有任何值为“2”的键(例如,如果你正在搜索产品2)tx_powermail_pi1 | field | produktang | 1 == 2
答案 1 :(得分:0)
我现在用一种技巧解决了它,因为我不能以不同的方式使它工作。 我做了什么:
我将电子邮件更改的特定产品移动到multiselect元素中的第一个位置。因此,它的指数将为0。 接下来要检查数组中位置0的元素是否等于所需的产品,在我的情况下它是" firstProduct"。由于它处于第一位置,它始终是" firstProduct"如果" firstProduct"检查,附加文本将打印"。我将默认文本设置为空字符串,以便在其他所有情况下保持空白。
以下是代码:
lib.serverex = CASE
lib.serverex {
key.data = GP:tx_powermail_pi1|field|produkt|0
firstProduct = TEXT
firstProduct.value = Lorem Ipsum
#Default
default = TEXT
default.value =
}
powermail内部的Checkbox配置:
firstProduct
secondProduct
thirdProduct
fourthProduct
fifthProduct
电子邮件内部的代码:
{f:cObject(typoscriptObjectPath:'lib.serverex', data:'{produkt}')}
它可能也以另一种方式起作用,但我无法以另一种方式解决它。希望如果有人遇到我遇到的相同问题,这会有所帮助。