Shopify / Liquid Operators - 仅包含

Shopify / Liquid Operators - Contains Only

如果字符串仅包含指定的字符串(即 完全 匹配),我正在寻找流动运算符。

例如,假设我有两个产品标签,'Black' 和 'Black and White',我只想触发 'Black' 的事件,我该如何处理?下面的液体会同时触发这两种情况,因此会输出两次消息。

{% if tag contains 'Black' %} Hi {% endif %}

我试过,例如

{% if tag = 'Black' %} Hi {% endif %}

但是这样会报错,好像是不允许的。是否有一个用于字符串精确匹配的运算符?

使用 == 而不是 = 作为运算符是可行的。

当您对数组使用 contains 运算符时,它会执行完全匹配。

例如,如果您的产品只有 Black and White 标签,则 product.tags contains "Black" 不会 return true,因为 product.tags 是一个数组。如果产品有 Black 标签,它只会 return true

看起来您在循环中分别针对每个标签使用了它,其中 tag 是一个字符串。在这种情况下 contains returns true 当字符串的一部分匹配条件时。