Bigcommerce 如果 URL 的条件检查不起作用
Bigcommerce if condition check for the URL is not working
你能告诉我下面的代码有什么问题吗?
{{#if url '===' (first (split (last (split head.meta_tags "href='")) "'")) }}
activePage
{{/if}}
如果正在考虑的 URL 等于当前页面 URL,我需要在 header 导航中添加一个条件。
但我的条件总是得到 false 值。
提前谢谢你。
url 不是全局对象,这向我表明您处于某种非全局上下文中(可能是每个循环)。您需要使用“../”(或多个,取决于您的深度)返回到全局上下文。因此,您的代码将如下所示:{{#if url '===' (first (split (last (split head.meta_tags "href='")) "'")) }} activePage {{/if}}
但是,您可能 运行 遇到像这样拆分元标记的问题。我建议改用面包屑。 {{#contains ../breadcrumbs.1.url url}} activePage{{/contains}}
.
最后,如果您在此处的组件内,您可能永远无法单独使用“../”访问全局上下文。您可以尝试使用 @root
标志。 {{#contains @root.breadcrumbs.1.url url}} activePage{{/contains}}
.
如果这仍然不起作用,您将希望将面包屑对象传递给组件,但为了给您提供此处使用的代码,我需要进一步查看流程。本质上,它看起来像这样:{{> components/menu/menu-item breadcrumbs=../breadcrumbs}}
你能告诉我下面的代码有什么问题吗?
{{#if url '===' (first (split (last (split head.meta_tags "href='")) "'")) }}
activePage
{{/if}}
如果正在考虑的 URL 等于当前页面 URL,我需要在 header 导航中添加一个条件。
但我的条件总是得到 false 值。
提前谢谢你。
url 不是全局对象,这向我表明您处于某种非全局上下文中(可能是每个循环)。您需要使用“../”(或多个,取决于您的深度)返回到全局上下文。因此,您的代码将如下所示:{{#if url '===' (first (split (last (split head.meta_tags "href='")) "'")) }} activePage {{/if}}
但是,您可能 运行 遇到像这样拆分元标记的问题。我建议改用面包屑。 {{#contains ../breadcrumbs.1.url url}} activePage{{/contains}}
.
最后,如果您在此处的组件内,您可能永远无法单独使用“../”访问全局上下文。您可以尝试使用 @root
标志。 {{#contains @root.breadcrumbs.1.url url}} activePage{{/contains}}
.
如果这仍然不起作用,您将希望将面包屑对象传递给组件,但为了给您提供此处使用的代码,我需要进一步查看流程。本质上,它看起来像这样:{{> components/menu/menu-item breadcrumbs=../breadcrumbs}}