引用 Shopify 商店的 Liquid 条件中没有属性的页面
Referencing pages with no properties in Liquid conditionals for Shopify store
我成功实现了一个在 Shopify 商店的每个页面上显示不同内容的滑块。在我想放置独特内容的五个页面(关于页面、博客提要、另一个手动添加的静态内容页面、主页和目录页面)中,我无法为主页和目录页面,因为我无法在 liquid 中引用它们。
我创建了一个测试片段来显示所有可能有用的变量,以便发现一种在有条件的情况下引用我的页面的方法:
<div class="grid__item__nm--wrap">
<span><h1>THIS IS WHAT THE PAGE HANDLE IS:</h1> {{ page.handle }}</span>
<span><h1>THIS IS WHAT THE PAGE TITLE IS:</h1> {{ page.title }}</span>
<span><h1>THIS IS WHAT THE PAGE TEMPLATE SUFFIX IS:</h1> {{ page.template_suffix }}</span>
<span><h1>THIS IS WHAT THE PAGE ID IS:</h1> {{ page.id }}</span>
</div>
(注意:上面的代码片段工作正常,不需要进行故障排除。我 post 它作为一种简洁的方式来演示我在做什么。)
在 theme.liquid 中包含此代码段适用于我添加到导航中的所有页面和 "About Us" 页面,显示不同的属性。但是,主页或目录页上的任何属性都没有任何输出。
我能做的最好的就是通过"else"案例在首页和目录页显示相同的内容。这还不够好。我想要主页和目录页的不同内容。事实上,理想情况下,我想从生成滑块的代码片段中排除目录页面(但不是主页)。如果没有任何属性可用于引用目录页面,我不知道如何做这些事情。
根据 Shopify 架构,页面是带有 url 的内容,如下所示 - //mystorelink.com/pages/page-handle
。所以当你使用{{ page.title }}
时,只有当url是上面的格式时才会显示页面标题。
不要混淆 "Shopify page" 和 "webpage",因为两者完全不同。
Shopify 页面是模板,而网页是普通 html 页面。为了满足您的要求,请参考以下 link 类型和模板
/
或 //myshoplink.com
-> index.liquid -> {{ page_title }}
& {{ page_description }}
/collections/xyz
-> collection.liquid -> {{ collection.title }}
& {{ collection.description }}
/products/xyz
或 /collections/abc/products/xyz
-> product.liquid -> {{ product.title }}
& {{ product.description }}
/pages/xyz
-> page.liquid -> {{ page.title }}
& {{ page.description }}
其他模板类似。
P.S。您可以使用后缀值有多个 product/collection/pages 等模板,但 {{ <template>.title }}
保持不变
P.P.S。如果什么都不改变,你可以在任何地方简单地使用 {{ page_title }}
和 {{ page_description }}
。它默认为当前使用的模板。
为了其他人的利益,这里有一个更全面的测试片段,用于根据已接受的答案查找要在 Liquid 条件句中使用的标识符:
<div class="grid__item__nm--wrap">
<span><h1>THIS IS WHAT THE SHOPIFY PAGE TITLE IS:</h1> {{ page.title }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY PAGE HANDLE IS:</h1> {{ page.handle }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY PAGE TEMPLATE SUFFIX IS:</h1> {{ page.template_suffix }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY PAGE ID IS:</h1> {{ page.id }}</span>
<span><h1>THIS IS WHAT THE RENDERED PAGE TITLE:</h1> {{ page_title }}</span>
<span><h1>THIS IS WHAT THE RENDERED PAGE META DESCRIPTION IS:</h1> {{ page_description }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY COLLECTION TITLE IS:</h1> {{ collection.title }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY COLLECTION HANDLE IS:</h1> {{ collection.handle }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY COLLECTION ID IS:</h1> {{ collection.id }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY COLLECTION DESCRIPTION IS:</h1> {{ collection.description }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY PRODUCT TITLE IS:</h1> {{ product.title }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY PRODUCT HANDLE IS:</h1> {{ product.handle }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY PRODUCT ID IS:</h1> {{ product.id }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY PRODUCT DESCRIPTION IS:</h1> {{ product.description }}</span>
</div>
我成功实现了一个在 Shopify 商店的每个页面上显示不同内容的滑块。在我想放置独特内容的五个页面(关于页面、博客提要、另一个手动添加的静态内容页面、主页和目录页面)中,我无法为主页和目录页面,因为我无法在 liquid 中引用它们。
我创建了一个测试片段来显示所有可能有用的变量,以便发现一种在有条件的情况下引用我的页面的方法:
<div class="grid__item__nm--wrap">
<span><h1>THIS IS WHAT THE PAGE HANDLE IS:</h1> {{ page.handle }}</span>
<span><h1>THIS IS WHAT THE PAGE TITLE IS:</h1> {{ page.title }}</span>
<span><h1>THIS IS WHAT THE PAGE TEMPLATE SUFFIX IS:</h1> {{ page.template_suffix }}</span>
<span><h1>THIS IS WHAT THE PAGE ID IS:</h1> {{ page.id }}</span>
</div>
(注意:上面的代码片段工作正常,不需要进行故障排除。我 post 它作为一种简洁的方式来演示我在做什么。)
在 theme.liquid 中包含此代码段适用于我添加到导航中的所有页面和 "About Us" 页面,显示不同的属性。但是,主页或目录页上的任何属性都没有任何输出。
我能做的最好的就是通过"else"案例在首页和目录页显示相同的内容。这还不够好。我想要主页和目录页的不同内容。事实上,理想情况下,我想从生成滑块的代码片段中排除目录页面(但不是主页)。如果没有任何属性可用于引用目录页面,我不知道如何做这些事情。
根据 Shopify 架构,页面是带有 url 的内容,如下所示 - //mystorelink.com/pages/page-handle
。所以当你使用{{ page.title }}
时,只有当url是上面的格式时才会显示页面标题。
不要混淆 "Shopify page" 和 "webpage",因为两者完全不同。
Shopify 页面是模板,而网页是普通 html 页面。为了满足您的要求,请参考以下 link 类型和模板
/
或//myshoplink.com
-> index.liquid ->{{ page_title }}
&{{ page_description }}
/collections/xyz
-> collection.liquid ->{{ collection.title }}
&{{ collection.description }}
/products/xyz
或/collections/abc/products/xyz
-> product.liquid ->{{ product.title }}
&{{ product.description }}
/pages/xyz
-> page.liquid ->{{ page.title }}
&{{ page.description }}
其他模板类似。
P.S。您可以使用后缀值有多个 product/collection/pages 等模板,但 {{ <template>.title }}
保持不变
P.P.S。如果什么都不改变,你可以在任何地方简单地使用 {{ page_title }}
和 {{ page_description }}
。它默认为当前使用的模板。
为了其他人的利益,这里有一个更全面的测试片段,用于根据已接受的答案查找要在 Liquid 条件句中使用的标识符:
<div class="grid__item__nm--wrap">
<span><h1>THIS IS WHAT THE SHOPIFY PAGE TITLE IS:</h1> {{ page.title }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY PAGE HANDLE IS:</h1> {{ page.handle }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY PAGE TEMPLATE SUFFIX IS:</h1> {{ page.template_suffix }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY PAGE ID IS:</h1> {{ page.id }}</span>
<span><h1>THIS IS WHAT THE RENDERED PAGE TITLE:</h1> {{ page_title }}</span>
<span><h1>THIS IS WHAT THE RENDERED PAGE META DESCRIPTION IS:</h1> {{ page_description }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY COLLECTION TITLE IS:</h1> {{ collection.title }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY COLLECTION HANDLE IS:</h1> {{ collection.handle }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY COLLECTION ID IS:</h1> {{ collection.id }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY COLLECTION DESCRIPTION IS:</h1> {{ collection.description }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY PRODUCT TITLE IS:</h1> {{ product.title }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY PRODUCT HANDLE IS:</h1> {{ product.handle }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY PRODUCT ID IS:</h1> {{ product.id }}</span>
<span><h1>THIS IS WHAT THE SHOPIFY PRODUCT DESCRIPTION IS:</h1> {{ product.description }}</span>
</div>