在Shopify Liquid主题中根据特定模式选择产品标签
我对Shopify Liquid主题语言还不熟悉,并试图找到自己的方法。我的Shopify商店中有以下产品及其标签:在Shopify Liquid主题中根据特定模式选择产品标签,shopify,liquid,shopify-template,Shopify,Liquid,Shopify Template,我对Shopify Liquid主题语言还不熟悉,并试图找到自己的方法。我的Shopify商店中有以下产品及其标签: CATEGORY CLOTHING t-shirt-A - Tags: t, -dog1- t-shirt-B - Tags: t, cat2 CATEGORY MUG mug-A - Tags: m, -dog1- mug-B - Tags: m, cat2 CATEGORY PHONECASE
CATEGORY CLOTHING
t-shirt-A
- Tags: t, -dog1-
t-shirt-B
- Tags: t, cat2
CATEGORY MUG
mug-A
- Tags: m, -dog1-
mug-B
- Tags: m, cat2
CATEGORY PHONECASE
phonecase-A
- Tags: p, -dog1-
phonecase-B
- Tags: p, cat2
从以上产品中,您可以看到t恤A和t恤B具有相似的标签t,马克杯A和马克杯B具有相似的标签m,等等
你还可以看到t恤A、马克杯A和手机壳A都有一个共同的第二个标签dog1。虽然它们属于不同的集合/类别,但除了特定的第一个标记外,它们还有-dog1-标记。我给了他们额外的-dog1-标签,因为他们有相同的狗形象
t恤A、马克杯A和手机壳A上都有相同的狗形象
现在我想实现的是,当用户在t恤a的产品详细信息页面中时,我想显示不同类别的其他产品,这些产品上有相同的图像。在本例中,我希望我的liquid主题显示mug-A和Phonecase-A,以便用户可以看到t恤上的图像也在mug-A和Phonecase上
我已经学习了Liquid的所有教程,但是我找不到任何过滤器可以帮助我选择当前产品的标签,比如-[a-zA-Z]-
我之所以说模式匹配,是因为其他t恤、马克杯和手机壳上都会有狗的图案
因此,我认为,通过模式匹配,您可以从当前的产品标签阵列中选择一个特定的标签,该标签匹配例如-[a-zA-Z]——当您有这个特定的标签时,您可以将它与所有类别中的所有标签进行比较,并选择具有相同标签的产品。而不是寻找正则表达式选项,使用可帮助您确定相关标记的自定义标记前缀
tagPrefix:tagname
这样做,您的输入将变成
CATEGORY CLOTHING
t-shirt-A
- Tags: t, sameImage:dog1
t-shirt-B
- Tags: t, sameImage:cat2
CATEGORY MUG
mug-A
- Tags: m, sameImage:dog1
mug-B
- Tags: m, sameImage:cat2
CATEGORY PHONECASE
phonecase-A
- Tags: p, sameImage:dog1
phonecase-B
- Tags: p, sameImage:cat2
然后在产品模板中,首先找到相同的图像标签。你可以用
{% for tag in product.tags %}
{% if tag contains 'sameImage:' %}
{% assign tagFound = tag %}
{% endif %}
{% endfor %}
一旦在tagFound变量中有了值,就可以迭代其他集合并使用具有相同标记的产品
然而,在我看来,由于产品集合上的循环过多,上述方法看起来效率低下。另一种更好的方法是使用产品元字段保存产品句柄的信息,然后使用所有产品检索链接的产品
谢谢你的回答。我很感激