ConvertKit中的Escape Liquid实例

184 阅读1分钟

需要在你的ConvertKit电子邮件中使用双大括号吗?也许你正试图写一些代码,但大括号和里面的东西都被剥离了。

这里有一个简单的解决办法。

在开头的双大括号之前,添加{% raw %}

在结尾的大括号之后,添加{% endraw %}

在ConvertKit液体中逃脱双括号的例子

我自己也遇到了这个问题--我的一些邮件内容被剥离出来,最后变成了这样:

<CustomButton
  green={true}
  width={64}
  options=
  onClick={doStuffFunc}
/>

而这里应该是这样的,在options= 行上有更多的文字:

<CustomButton
  green={true}
  width={64}
  options={{ awesome: "yes", disabled: "no" }}
  onClick={doStuffFunc}
/>

为了得到这个结果,我改变了电子邮件的文本,将双括号包裹在一个原始/末尾的块中:

<CustomButton
  green={true}
  width={64}
  options={% raw %}{{ awesome: "yes", disabled: "no" }}{% endraw %}
  onClick={doStuffFunc}
/>

现在它的效果很好 :)

奖励:如果你真的非常需要,如何编写{% raw %}

如果你需要在你的邮件中写上几乎任何其他的液体,并且希望它在实际的邮件中原封不动地出现,用{% raw %} +{% endraw %} 来包装它就可以了。

但是,如果你想在电子邮件中真正包括文本{% raw %} ,该怎么办?

(为了写这篇文章,我必须弄清楚这个问题,因为我的博客也是用Liquid做模板的!)

公平的警告,这可能会伤害你的眼睛和大脑。它伤害了我。以下是如何做到这一点。

{{ "{% raw" }} %}{{ "{% endraw" }} %}

这就是为什么这样做的原因:

{{ "{% raw" }} %}

  • 双括号实际上是一个液体表达式(整个黄色部分)
  • 双括号内是一个被双引号包围的字符串(橙色部分)。在文本被插入页面之前,引号被移除。
  • 最后的结尾%} 是普通的文本,因为它在双括号之外。它对Liquid来说并没有什么特别的意义。