schemeで設定した値について

Topic summary

Shopifyのscheme設定において、テーマエディターのテキスト入力フィールドを必須項目にする方法についての質問です。

質問内容:

  • "required": true のような設定で入力を必須化できないか
  • 現在は type: "text" のscheme設定を使用中

回答:

  • 現状のShopifyの仕様では必須化は難しい
  • 代替案として、Liquidコードでの条件分岐を提案:
    • {% if section.settings.s-heading != blank %} で入力値の有無を判定
    • 未入力の場合は代わりのテキストを表示する方法

結論:
scheme側での必須化は実現できないため、Liquid側での条件分岐による対応を検討することで解決。質問者は代替案を受け入れ、検討する意向を示しています。

Summarized with AI on November 20. AI used: claude-sonnet-4-5-20250929.

schemeで設定した値を必須に出来ないか質問でございます。
例として下記のような設定があります。

このような場合にテーマエディターからのtext入力を必須にすることは可能でしょうか。

“required”: trueなどが使えればと思ったのですが使えませんでした。

{% schema %}
  {
    "name": "test",
    "settings": [
      {
        "type": "text" ,
        "id": "s-heading" ,
        "label": "セクション見出し" ,
        "default":  "HELLO! 
      }
    ] ,
    "presets": [
      {
        "name": "test"
      }
    ]
  }
{% endschema %}

お手数ですがご教示いただけますと幸いです。

Naru_05さま

ご質問を確認いたしました。

requiredにする方法を検討してみましたが、現状のShopifyの仕様では難しそうでした。

代替案にはなりますが、以下出力方法に変えてはいかがでしょうか?

{% if section.settings.s-heading != blank %}

{{ section.settings.s-heading }}
{% else %}
未入力だった場合に出すテキスト
{% endif %}

schemaに入力がない場合は代わりのテキストを表示する形になります。

ご参考になりましたら幸いです。

私たちの励みにもなりますので、
お役に立てていればBest Answerボタンを押して頂ければ嬉しいです。

分からない点があれば、またいつでもご連絡ください。

フルバランス 渡邉

1 Like

株式会社フルバランス

渡邉 様

ご返信ありがとうございます。

やはり現状の仕様では難しいとのこと理解しました。

ご教示いただいた代替案を検討しようと思います。

ありがとうございました。