0

我花了一天的大部分时间来建立一个新的 shopify 网站——我第一次使用 shopify。其中大部分内容都非常简单明了,但在产品页面上显示库存时,我发现自己有些难过。我正在使用首次亮相的主题,并使用编辑器更新“product-template.liquid”

浏览文档后,我添加了以下内容;

{% comment %} Inventory tracking on product page {% endcomment %}
        <div id="variant-inventory" class="{% unless current_variant.available %} hide {% endunless %}">
          {% if current_variant.inventory_management == "shopify" and current_variant.inventory_policy != "continue" %}
          We have {{ current_variant.inventory_quantity }} in stock for next-day delivery when you order by 2pm.
          {% else %}
             Out of Stock
          {% endif %}
        </div>

但是,对于实际上有货的物品,目前这会返回“缺货”。此外,我希望实现但无法找到文档的是;

  • '有货' = 我们有 {{ current_variant.inventory_quantity }} 有现货,当您在下午 2 点之前订购时,可以在第二天发货。
  • '没有库存,但允许客户订购' = 现在订购,7 天内交货
  • '没有库存,客户不允许订购' = 缺货

非常感谢任何指针!

4

2 回答 2

1

你有:

          {% if current_variant.inventory_management == "shopify" and current_variant.inventory_policy != "continue" %}
      We have {{ current_variant.inventory_quantity }} in stock for next-day delivery when you order by 2pm.
      {% else %}
         Out of Stock
      {% endif %}

这将针对以下任一情况显示“缺货”消息:

  • inventory_managementblank(这是默认值)
  • inventory_policycontinue

你可能想要的是这样的:

    {% if current_variant.inventory_management == "shopify" and current_variant.inventory_policy != "continue" %}

          {% comment %}
          We care about inventory on this product - is there any in stock?
          {% endcomment %}
          (% if current_variant.inventory_quantity > 0 %}
             We have {{ current_variant.inventory_quantity }} in stock for next-day delivery when you order by 2pm.
          {% else %}
             Out of Stock
          {% endif %}

    {% else %}
        {% comment %}
        Any code/messages we might want for products where we don't care about inventory
        {% endcomment %}
    {% endif %}
于 2018-04-16T20:10:20.180 回答
0

我对这行代码有点困惑:

{% if current_variant.inventory_management == "shopify" and current_variant.inventory_policy != "continue" %}

您正在检查的是您是否使用 shopify 来跟踪库存,以及是否在管理面板中检查了允许人们订购的变体选项命令,即使它缺货。我会假设后者已被检查,所以它总是返回 else。

如果它没有库存,那么由于这条线,什么都不会显示:

div id="variant-inventory" class="{% 除非 current_variant.available %} 隐藏 {% endunless %}">

由于我不确定您打算如何区分缺货和缺货可以在 7 天内订购。由于库存跟踪器中没有任何内容可让您输入传入的产品(据我所知)。如果您倾向于手动输入,您可以转到 product.template.liquid 查找Ctrl+F

{% 除非 current_variant.available %}

第二个是售罄代码发生的地方,并通过添加和删除标签来编辑它(使用 noOrder 和 noStockCanOrder 作为示例标签)

{% if product.tags contains 'noOrder' %}
  <div>No inventory, customer not allowed to order' = Out of Stock</div>
  -Insert Current out of stock code here-
{% elsif product.tags contains 'noStockCanOrder' %}
  <div>No inventory, but customer allowed to order' = Order now for delivery within 7 days</div>
  -Insert Current in stock code here-
{% else %}
  <div>Items in stock' = We have {{ current_variant.inventory_quantity }} in stock for next-day delivery when you order by 2pm.</div>
    -Insert Current in stock code here-
{% endif %}

您可能需要稍微尝试一下,因为我从来没有完全按照您的要求完成,但是理论应该是合理的,它应该让您接近您想要的,您可以从那里编辑它。

于 2018-04-16T20:02:04.530 回答