if-statement - Shopify Liquid If 商店名称声明
问题描述
我通过 theme.liquid 文件中的以下语句将我的品牌名称或商店名称添加到我的所有 URL 中。我想排除所有博客或文章页面。这意味着这些 URL 上没有商店名称,即这个管道和代码。
| {{ shop.name }}
原始代码
{%- capture seo_title -%}
{%- if template == 'search' and search.performed == true -%}
{{ 'general.search.heading' | t: count: search.results_count }}: {{ 'general.search.results_with_count' | t: terms: search.terms, count: search.results_count }}
{%- else -%}
{{ page_title }}
{%- endif -%}
{%- if current_tags -%}
{%- assign meta_tags = current_tags | join: ', ' -%} – {{ 'general.meta.tags' | t: tags: meta_tags -}}
{%- endif -%}
{%- if current_page != 1 -%}
– {{ 'general.meta.page' | t: page: current_page }}
{%- endif -%}
{%- assign escaped_page_title = page_title | escape -%}
{%- unless escaped_page_title contains shop.name -%}
| {{ shop.name }}
{%- endunless -%}
{%- endcapture -%}
<title>{{ seo_title | strip }}</title>
我一直试图在下面放置另一个 if 语句,但我还没有运气。
{%- assign escaped_page_title = page_title | escape -%}
{%- unless escaped_page_title contains shop.name -%}
| {{ shop.name }}
{%- endunless -%}
这是我尝试过的代码,有没有更好的方法来做到这一点,因为我不能让它工作。
尝试的代码
{%- capture seo_title -%}
{%- if template == 'search' and search.performed == true -%}
{{ 'general.search.heading' | t: count: search.results_count }}: {{ 'general.search.results_with_count' | t: terms: search.terms, count: search.results_count }}
{%- else -%}
{{ page_title }}
{%- endif -%}
{%- if current_tags -%}
{%- assign meta_tags = current_tags | join: ', ' -%} – {{ 'general.meta.tags' | t: tags: meta_tags -}}
{%- endif -%}
{%- if current_page != 1 -%}
– {{ 'general.meta.page' | t: page: current_page }}
{%- endif -%}
{%- if (template == "blog" or template == "article") and current_tags contains '_NOINDEX' -%}
{%- assign escaped_page_title = page_title | escape -%}
{%- unless escaped_page_title contains shop.name -%}
{%- endunless -%}
{%- else -%}
{%- assign escaped_page_title = page_title | escape -%}
{%- unless escaped_page_title contains shop.name -%}
| {{ shop.name }}
{%- endunless -%}
{%- endif -%}
{%- endcapture -%}
<title>{{ seo_title | strip }}</title>
解决方案
您可以使用以下内容:
{%- unless escaped_page_title contains shop.name or template == 'blog' or template == 'article' -%}
| {{ shop.name }}
{%- endunless -%}
您很接近,但您不能使用括号对 Liquid 条件运算符进行分组。
推荐阅读
- python - 在 python3.7 中安装 pytorch 的问题
- android - 打开失败:EACCES(权限被拒绝)ANDROID 11
- c++ - clang/clang-cl 未定义符号“__tls_index”(自定义 CRT 实现)
- winapi - WIN32:所有者绘制按钮中的重复标准按钮控件(禁用图标/热键下划线)?
- ios - Ios Webrtc,系统弹出窗口在视频流中不可见
- php - 在 href 按钮中存储变量
- nginx - 手动启动nginx,静态html没问题,但是用systemctl启动nginx,是403
- c# - 找不到类型或命名空间名称“ILogger<>”(您是否缺少 using 指令或程序集引用?) [PaymentApi]
- save - RapidMiner:如何导出流程的整个结果集合?
- c++ - 无法使用 alsa 在 linux 中播放 wav 文件