このプロジェクトについて
ECサイトで商品を探すとき、お客様は「自分に合った商品」を素早く見つけたいと考えています。商品数が多いサイトでは、フィルター機能が使いやすさを大きく左右します。
このプロジェクトでは、Shopifyのカスタムフィールド(Metafield)を活用し、性別・シーズン・カテゴリ・価格帯など、様々な条件で商品を絞り込める仕組みを設計しました。
課題
- 標準のShopifyフィルターでは対応できない項目がある(シーズン、スポーツ種別など)
- フィルターの組み合わせが複雑になると、検索結果が正しく表示されない
- ページ表示が遅くなりがち
解決策
ShopifyのMetafieldという機能を使い、商品ごとにカスタムの属性情報を持たせました。これにより、標準では対応できないフィルター項目も自由に追加できます。
また、フィルター処理をサーバー側とクライアント側で役割分担することで、パフォーマンスを維持しながら複雑な絞り込みを実現しています。
詳しく知りたい方へ
1
カスタムフィールドを使ったフィルタリング
商品にカスタムの属性(性別、シーズン、カテゴリなど)を設定し、それを使ってフィルタリングする仕組みを解説します。
2
価格帯フィルターの仕組み
価格帯での絞り込みを、使いやすく・管理しやすく設計した方法を解説します。
構成図
フィルター処理の流れ
お客様がフィルターを選択
性別: メンズ、シーズン: 春夏、価格帯: 〜5万円
フィルター条件をAPIに送信
リクエスト
サーバー側で処理
Metafieldベースのフィルター(性別・シーズン・カテゴリ)
クライアント側で処理
追加フィルター(価格帯・サイズ・在庫状態)
絞り込まれた商品一覧を表示
検索結果
使用技術
- Shopify Storefront API
- Shopify Metafield
- Next.js API Routes
- カーソルベースページネーション