「/collections」に対応するページの編集方法が分かりません

Topic summary

Shopifyテーマ(Dawnベース)で /collections URLに対応するページの編集方法についての質問と解決。

問題状況:

  • /collections/allcollection.jsonheader.liquid で編集可能
  • /collections は編集方法が不明で、デフォルトのコレクション一覧が表示される
  • URLリダイレクト設定も反映されない

目標:

  1. /collections のレンダリング内容を編集可能にする
  2. /collections/collections/all にリダイレクト
  3. 404用liquidファイルをレンダリング

解決方法(自己解決):
目標2を実現するコードを共有。{% if request.path == routes.collections_url %} を使用した条件分岐により、目標1と3も本質的に達成可能。ただし、ベストソリューションかは不明。

ステータス: 解決済み

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

Shopifyのテーマの構造を理解するため、Dawnをベースに、ファイルをほとんど削除し、ほとんど一から作成しております。

件名の通り、「/collections」に対応するページを編集する方法が分からないので、この方法を教えていただけますと幸いです。

現状、コレクションとしてはテスト用に一件のみ作成しており、タイトルが「全商品一覧」、ハンドルが「all」でございます。

この状況で「/collections」をリクエストいたしますと、次のhtmlがレンダリングされます。


## Product Collections

- **全商品一覧**<small>product</small>

テンプレートのフォルダ構造としては、次の通りです:

  • layout
    • password.liquid
    • thema.liquid
  • template
    • collection.json
    • gift_card.liquid
  • section
    • header.liquid
  • snippet
  • setting / asset / locale はDawn標準のままです

また、collection.json、header.liquidの内部は次の通りで、こちらのファイルを編集すると、「/collections/all」をリクエストした際にレンダリングされる内容が変化し、差分が確認できております(一方で、「/collections」には反映されません)。
また、URLリダイレクトの設定ページにおいて「/collections」を「/collections/all」に遷移するよう設定したのですが、この前後でレンダリングされる内容に変化はありませんでした。

(一方、「/collections/test」を「/collections/all」にリダイレクトするとこちらは想定通りの挙動をするため、リダイレクト自体が無効になっているわけではなさそうでした。)

{
  "sections": {
    "a": {
      "type": "header",
      "settings": {
      }
    }
  },
  "order": [
    "a"
  ]
}

  # test no title
  

    collection you no paragraph desu.
  

{% schema %}
  {
    "name": "x",
    "class": "section",
    "settings": []
  }
{% endschema %}

{% stylesheet %}
{% endstylesheet %}

{% javascript %}
{% endjavascript %}

目標は次のいずれかを達成することです。最低限、一つが達成できれば良いのですが、できればいずれの方法も理解しておきたいと考えております。

  1. URL「/collections」をリクエストした際にレンダリングされる内容を編集する。予め用意した任意の内容を表示できるように設定できるようにしたい。
  2. URL「/collections」をリクエストされた際に、「/collections/all」にリダイレクトしたい。
  3. URL「/collections」をリクエストされた際に、404用のliquidファイルをレンダリングしたい。

可能性としてsetting / asset / localeのいずれかに設定が書かれていることを疑っているものの、ファイル数が多く確認がしきれておりません。

改めて質問内容をまとめますと、上記の三目標の達成方法を教えていただきたいです。

あるいは、現状レンダリングされているページの内容を決定しているコードがどれかが分かるだけでも大変助かります。
関連する情報をご共有いただけるだけでも大変ありがたいです。

皆さまのお知恵をお借りいただけますと幸いです。よろしくお願いします。

自己解決いたしました。2. を実現するためのコードを共有いたします。

{% if request.path == routes.collections_url %}
  
  
{% endif %}

条件分岐の内部を工夫することで1. や 3. も本質的に達成できることが分かりました。
初歩的な問題で、かつベストソリューションかは分かりかねますが、参考になりましたら幸いです。