【问题标题】:Display links to other colors on Shopify product page在 Shopify 产品页面上显示指向其他颜色的链接
【发布时间】:2019-02-28 08:40:22
【问题描述】:

我在 Shopify 上有一家在线商店,其中一款产品有 10 种不同颜色。因此,出于 SEO 的目的,我创建了 10 种产品,例如黑色 T 恤、蓝色 T 恤、红色 T 恤等。我为每种产品分配了自己的标签和独特的描述。

我要做的是从每个产品页面将所有产品相互链接,例如,当前查看的产品是黑色 T 恤,我想在该页面上显示 10 个 可点击 colours/swatch 带有每种颜色的图像,并在当前查看中添加活动类,当单击另一种颜色时,它会将用户带到另一个产品页面。我该如何实现?

任何帮助将不胜感激!

【问题讨论】:

  • 如何实现? Messily :P 有很多方法可以做到这一点,但它们都会有不同程度的 hacky,并且会在页面加载期间在 Liquid 逻辑或 AJAX 调用中引入大量开销。您确定无法通过使用描述性架构(例如:JSON-LD、json-ld.org)而不是依靠人为地增加您的页数来实现所需的 SEO?毕竟,Google 会根据质量对链接进行加权。
  • 对不起,我的错我还应该提到十种不同的颜色/产品是客户要求的 UX 设计的一部分。购物有 3 个步骤,在主页上(第 1 步)我有 3 个收藏集,当用户选择/单击其中一个时,他最终会在另一个页面上开始 可用颜色(第 2 步)在此步骤中,用户选择他喜欢的颜色并移至产品页面(第 3 步),他在其中查看有关所选产品的所有详细信息。我知道是安装第三方色板应用并支付月费,但我更喜欢不使用应用的解决方案。
  • 嗯。或许没那么乱,那么——听起来第 2 步是一个收藏页面,对吧?因此,您将在 Liquid 中拥有collection.products,只要产品数量合理(即,适合合理的分页大小),您就不应该有任何问题。是否可以为您的第 2 步系列创建自定义系列模板,将其设计为产品页面,其中样本是单个产品? (会有一些假设,即集合中的所有产品都具有相同的选项尺寸 - 所以所有产品要么是单一变体的,要么具有共同的“尺寸”......)
  • 正确!步骤1包含三个品种;系列 1 - 小 系列 2 - 中 系列 3 - 大 第 2 步是一个使用自定义模板的系列页面,用户在此页面上看到样本,十种颜色作为具有相同选项尺寸(尺寸)的单个产品。产品 URL 结构类似于 www.example.com/collections/brand-t-shirt-size/colour

标签: shopify shopify-template


【解决方案1】:

我想与可能需要解决相同任务的其他人分享。

这是我为完成这项工作所做的工作;

首先,我根据其集合为每个产品添加了一个标签,在集合 SMALL 中的所有产品的示例中,我添加了标签 small,然后我必须编写这段代码来获取所有具有相同标签的产品的列表。

  {% if product.tags contains "small" %}
        {% assign current_product_tag = "small" %}
  {% elsif product.tags contains "medium" %}
        {% assign current_product_tag = "medium" %}
  {% elsif product.tags contains "large" %}
        {% assign current_product_tag = "large" %}
  {% endif %}

  {% assign current_product = product %}
    <div id="sw_container">
      <p class="sw_title">Select Colour</p>
      <ul class="sw_list">
  {% for product in collections.all.products %}
  {% if product.tags contains current_product_tag %}
        <li class="sw_item{% if product.handle == current_product.handle %} active{% endif %}">
          <a title="{{ product.title | escape }}" href="{% if product.handle == current_product.handle %}#{% else %}{{ product.url }}{% endif %}">
            <img src="{{ product.images.last  | product_img_url: 'small' }}" alt="{{ product.title | escape }}">
          </a>
        </li>
  {% endif %}
  {% endfor %}
      </ul>
    </div>

【讨论】:

  • 我喜欢这种方法,它似乎比使用应用程序更好。我想做类似的事情,并对您的代码有几个问题。您如何处理色样的样式?我还没有尝试过你的代码,但看起来这会列出颜色名称?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-08-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-29
  • 2019-03-20
相关资源
最近更新 更多