https://themes.shopify.com/themes/mr-parker/styles/wardrobe/preview?locale=ja
上記テンプレートを用いて、サイトを構築しております。
トップページの商品一覧から遷移した場合には、商品ページにある「Recommended products」が表示されるのですが、
商品一覧(Collections)から遷移した場合に、同様の商品でも「Recommended products」が表示されない現象に見舞われています。
こちらの原因を究明・解決したいと思っています。
カスタマイズより、レコメンド表示はONにしております。
URLは下記のような形です。
■前者(レコメンドが表示される)
https://ドメイン/collections/frontpage/products/商品名
■後者(レコメンドが表示されない)
product.liquidは下記の形です。
{% section 'product-template' %}
{% section 'custom-fields-products' %}
{% section 'product-recommendations' %}
product-recommendations.liquidによって表示を行っていると思われるのですが、こちらは下記のようなコードです。
{% if section.settings.show_product_recommendations %}
{% assign limit = section.settings.recommended_product_limit %}
{%- if recommendations.performed -%}
{%- if recommendations.products_count > 0 -%}
## {{ section.settings.product_recommendations_heading }}
{%- if settings.header_border_style == 'zigzag' -%}
{% endif %}
{% case section.settings.grid %}
{% when 2 %}
{%- assign grid_item_width = 'span-6 auto' -%}
{% when 3 %}
{%- assign grid_item_width = 'span-4 md-span-4 sm-span-6 auto' -%}
{% when 4 %}
{%- assign grid_item_width = 'span-3 md-span-4 sm-span-6 auto' -%}
{% endcase %}
{%- for product in recommendations.products -%}
{% render 'product-listing', product: product, limit: limit %}
{%- endfor -%}
{%- endif -%}
{%- else -%}
{%- endif -%}
{% endif %}
変数に問題があるのかと思い、if文の前で変数を表示してみたところ、両URLにて変数の内容は同じでした。
「product.id」は取得できており、「recommendations.performed」等のif文の判断に用いられている変数も同一(0やfalse等)でした。
しかし、if文のあとで「recommendations.products_count」変数を表示したところ、レコメンド有URLには「4」、レコメンド無URLにおいては「0」と表示されました。
レコメンド無URLにおいては、「recommendations.products_count」にassignを用いて数値を代入しても、常に「0」と表示されました。
対して、レコメンド有のURLにおいてはif文後に数値を代入しても「4」になりました。
上記のような形なのですが、原因や解決方法などはわかりそうでしょうか。
まだ経験が浅く、要領を得ない内容になっていた場合は申し訳ございません。
助力いただけますと非常に幸いです。
不足情報などありましたら、追記いたします。
何卒よろしくお願いたします。