サイト内検索の結果にヒットする条件

Topic summary

Dawnテーマを使用しているストアで、サイト内検索に「ABC」と入力すると、関連のない商品まで大量にヒットする問題が報告されています。

問題の詳細:

  • 該当商品にはABCのタグやコレクション設定がない
  • 他の単語では正常に動作するが、特定の単語のみ異常な結果を返す

推定される原因:
Shopifyの日本語検索は以下の機能を持つため:

  • ステミング: あいまい検索機能
  • トリグラム: 3文字以上の連続シーケンスにマッチ

これらが組み合わさり、A・B・C各文字に部分的にマッチする商品が広範囲に検出される可能性があります。

推奨される対応:

  • 完全一致検索には "ABC" とダブルクォーテーション付きで検索
  • 詳細なアルゴリズムは非公開のため、Shopifyサポートへの問い合わせを推奨

ステータス: 根本的な解決方法は未確定、回避策のみ提示

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

テーマ:DAWN

サイト内検索窓に「ABC」と入れて検索をすると、ABCという商品のほかにも

全く関係のない商品までヒットしてしまいます。(ABCは仮の名称です)

関係のない商品のタグを確認しましたが、「ABC」というタグは使用しておらず、ABCのコレクションにも

追加されていません。

サイト内検索に入力されたワードは、なにを基準に結果を返しているのでしょうか?

別の単語で検索すると、その単語に関係のあるものだけ表示されます。

特定の単語のみほぼすべての商品が表示されるようになっており、判定基準がお分かりの方がいらっしゃいましたらご教示いただきたいです。

@uf2

Shopifyのサイト内検索における詳細なアルゴリズムの情報は公開されていないように思いますので、

詳細については、Shopifyのサポートにお問い合わせいただくのが良いかと思います。

下記は私の所見です。

まず、ABCで正確に検索するには、"ABC"とダブルクォーテーション付きで検索すると良いかと思います。

次に、ABCと関係がない商品がマッチングしてしまう理由ですが、

https://help.shopify.com/ja/manual/online-store/storefront-search/search-behavior#japanese-locale

日本語のロケールでは、検索のステミングとトリグラム検索に対応していますが、タイプミス耐性には対応していません。

ステミングとはあいまい検索のようなもの、と考えています。

また、トリグラムは上記URLに記載の通りですが、

カタカナ、ひらがな、漢字での検索では、3文字以上の連続する任意のシーケンスと一致します。

たとえば、「アップルグリーンラップドレス」は以下のいずれかの用語を検索すると見つかります。

ップル
アップル
ップルグリーンラ

漢字は2つが1組になって見つかることもあります。

この、ステミングとトリグラムが組み合わさることによって、

ABCのうち、例えば、Aにだけマッチする商品、Bにだけマッチする商品、Cにだけマッチする商品が合致しつつ、

それらのあいまい検索も合致した結果、

ABCと関係のない商品もマッチしてしまうのではないかと思います。

ご参考まで。

(キュー田辺)