コンテンツにスキップ

2026-06 Storefront コレクション表示順 補足仕様

位置づけ

本ドキュメントは、既存仕様書を補完する追加合意事項(正本補足)です。 Storefront の商品探索導線(ヘッダーメガメニュー / モバイルドロワー / 商品一覧サイドバー / ホームのコレクションブラウズ)に並ぶ、コレクションの表示順の決定ルールを明確化します。

CollectionFacet / custom field の責務境界は 2026-03 Collection / Facet / custom field の責務境界 を正本とし、本書はそのうち並び順の確定ルールだけを扱います。

合意日

  • 2026年6月9日

決定事項

  • コレクションの並び順は Vendure 標準の Collection.position を唯一の正本とする。表示順専用のカスタムフィールドや独自プラグインは設けない。
  • positionVendure Dashboard で各コレクションを編集して設定・変更する。
  • 並び順は 同一階層(同じ親を持つ兄弟コレクション)内で position 昇順に並べる。
  • 子コレクションに position が設定されていないときは、親(祖先まで辿った)の表示順を継承する。
  • 子コレクションに position が設定されているときは、親から継承する値より子自身の値を優先する(子が親を上書きする)。
  • 親自身に position が無い場合は、さらに祖先を辿って継承する。継承できる祖先が無い最上位(親なし)で未設定のものは、末尾に並べる。
  • position が同値のときは、取得順を保った安定した並びとする。

表示順ルールまとめ

観点 並び順
子に position あり 子の値で並ぶ(親より優先)
子に position なし 親(祖先)の表示順を継承して並ぶ
親も position なし さらに祖先を辿って継承し、最上位でも無ければ末尾
同値 取得順(安定した並び)

適用範囲と例外

  • 本ルールは、最上位の区分(ブランド / 製品タイプ / キャンペーン)の配下に並ぶ子コレクション以降に適用する。
  • 最上位の区分(root グループ)そのものの並びは position ではなく、固定順(ブランド → 製品タイプ → キャンペーン)とする。区分の入れ替えはコード変更を伴う運用とし、Dashboard の position では変更しない。
  • コレクション内に並ぶ商品(ProductVariant)の並び順は本書の対象外(別軸で管理する)。

受け入れ観点

  • Vendure Dashboard でコレクションの position を変更すると、Storefront の探索導線の並びへ反映されること。
  • 同じ親を持つ子コレクションが position 昇順で並ぶこと。
  • position 未設定の子コレクションが、末尾送りではなく親(祖先)の表示順を継承して並ぶこと。
  • position 設定済みの子コレクションが、親から継承する値より優先して並ぶこと。
  • 最上位区分の並び(ブランド → 製品タイプ → キャンペーン)が position の値に関わらず固定であること。

影響範囲

  • Storefront ヘッダーメガメニュー / モバイルドロワー
  • Storefront 商品一覧サイドバー
  • Storefront ホームのコレクションブラウズ
  • Vendure Collection の position(Vendure Dashboard 上での運用)

関連実装ドキュメント