1

所以这是我的问题:在 powermail 中选中特定复选框后,我尝试输出附加文本。

SELECT字段包含多个选项,当然都可以选择,但是当检查IE字段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

无论输入/复选框是什么,它都会附加它,或者根本不发送附加文本。我可能在这里遗漏了一些东西。

提前致谢!

4

2 回答 2

0

字段 {produktang} 的结果是一个数组(当然因为它是一个复选框)。因此,您必须确定在您的情况下是否有任何值为“2”的键(例如,如果您正在搜索产品 2) tx_powermail_pi1|field|produktang|1 == 2

于 2017-08-24T10:46:52.210 回答
0

我现在用一种技巧解决了它,因为我无法让它以不同的方式工作。我做了什么:

我将电子邮件更改的特定产品移动到多选元素中的第一个位置。所以它的索引将为 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}')}

它可能也以另一种方式工作,但我无法以另一种方式解决它。如果有人遇到与我相同的问题,希望这会有所帮助。

于 2017-10-09T12:10:26.853 回答