FROM CACHE - jp_header

商品ごとにフォーム入力を追加したい

解決済

商品ごとにフォーム入力を追加したい

reiko888
遊覧客
24 1 6

お世話になっております。
以下のページから、商品ページの入力からカートへ渡すフォームを追加することができました。
https://ui-elements-generator.myshopify.com/pages/line-item-property

ところが、商品によってはその入力が必要では無いものがあり、

非表示にしたいので「myproducts.liquid」を追加し、購入ボタンの上に読み込めるブロックにしたいと思ったのですが、表示はされるものの、カートにはデータを渡せませんでした。

どこに、問題があるのか、ご教示いただけたら助かります。
よろしくお願いいたします。

<p class="line-item-property__field">
  <label>領収書のご希望</label><br>
  <select id="select3" name="properties[領収書のご希望]" form="{{ product_form_id }}">
    <option value="無し">無し</option>
    <option value="有り">有り</option>
  </select>
</p>

{% schema %}
  {
    "name": "myproducts",

  "presets": [
   {
     "name": "希望確認"
   }
 ]
}
{% endschema %}

 

1 件の受理された解決策
_osamu_iwasaki_
Shopify Partner
188 47 194

成功

その場合は、商品ごとにメタフィールド作って出し分けをするといいと思います。

 

meta.png

 
 
 
 
 
 

 

{% if product.metafields.custom.receipt == true %}
line item propertyのHTML
{% endif %}

 

元の投稿で解決策を見る

4件の返信4

_osamu_iwasaki_
Shopify Partner
188 47 194

コード全体みてないので推測ですが、
HTML上の<form></form>(Liquidでは{% form %}{% endform %})タグの間に、

上記のline item propertyが入っていないのではないでしょうか?

 

あと関係なさそうですが、下部のschemaは機能してなさそうです。

reiko888
遊覧客
24 1 6

@_osamu_iwasaki_
返信をいただき、ありがとうございます。すみません、質問ですが
追加のコードを直接カートのmain-product.liquidに書くとカートまで呼び込めたのですが、
ブロックにして、商品ごとに呼びたいのですが、その場合も、追加した
myproducts.liquidをmain-product.liquidの中に記述する必要があるのでしょうか?

_osamu_iwasaki_
Shopify Partner
188 47 194

成功

その場合は、商品ごとにメタフィールド作って出し分けをするといいと思います。

 

meta.png

 
 
 
 
 
 

 

{% if product.metafields.custom.receipt == true %}
line item propertyのHTML
{% endif %}

 

reiko888
遊覧客
24 1 6

ありがとうございます!できました。
大変助かりました。