25

商品ハンドルのリストがあり、このハンドルに基づいて商品を取得したいと思います。Liquidに単一の製品を入手するように指示する方法はないようです。これはAPIで実行できますが、APIを使用する場合は、JavaScriptを使用する必要があり、スニペットに既にあるHTMLをコピーし、ロジックもコピーする必要があります。

私が試みているものの縮小版:

{% assign handle = 'my-product-handle' %}
{% assign product = products.handle %}
{% include 'snippet-product-item' %}
4

6 に答える 6

36

You can now retrieve a product via a handle using the following:

{% assign someProduct = all_products.some-handle %}

There's currently no documentation to back this up, but hopefully there'll be something tangible on Shopify side soon.

于 2015-06-15T18:17:27.327 に答える
9

これを見つけたばかりの人のために更新するために、Shopify/liquid repo のこの応答all_products['handle']に従って、ハンドルを介して製品を直接参照できるようになりました。

于 2015-07-16T17:30:50.920 に答える
3

次のようなことを試すことができます:

{% for product in collection.all_products %}
    {% if product.handle contains 'your-handle-name' %}
        // Do what you want here
    {% endif %}
{% endfor %}

すべての製品をループすると (特定のコレクションをループすることもできます)、if ステートメントを使用して目的の製品を見つけることができます。

乾杯。

于 2014-06-01T19:51:25.020 に答える
1

私の知る限り、液体のハンドルで製品を取得することはできません。

それは私にいくつかの質問をするように導きます: そもそもなぜ製品ハンドルのリストを持っているのですか? それはどこから来たのか?これらの製品をカスタム コレクションに入れることをお勧めします。その後、次のように参照できます。{% collections['my-collections'] %}

于 2012-11-07T19:20:25.580 に答える