2016-06-21 26 views
1

_config.phpファイルにSilverStripeのFulltextSearchableを有効にしました。 FulltextSearchableのデフォルト検索の結果を強化したい。次のようにSilverStripe FullTextSearchableの検索結果を改善するには?

デフォルトの検索結果は以下のとおりです。

  • 私が存在する単一の単語を検索した場合、それは結果を示しています。 OK

  • この単語の文字のみを変更すると、何も見つかりません。 BAD

  • 複数の単語を検索すると、これらの単語がデータベースによく似ている場合を除いて、何も検索されません。 BAD

自分のサイトにGoogleカスタム検索モジュールを使用したくないです。

FullTextSearchableを強化して複数の単語を見つけて、より良い結果を得るための簡単な方法はありますか?

+1

ありがとうございました。より良い英語のための@ 3dgoo – StefGuev

+0

私はhttps://github.com/標準検索の代わりにg4b0/silverstripe-searchable-dataobjectsモジュールを使用します。 Biggest pro:各ページタイプ/データオブジェクトに対して、どのコンテンツを検索できるかを定義できます。 – wmk

+0

はい私はそれを試しました。しかし、私はより良い検索アルゴリズムが必要です。部分検索、不完全検索のように、%$ query%の標準検索ではなく検索エンジンのように見えます。私は実際に使用しています(DataObject :: get( "Page"、 "MATCH(Title、Content)AGAINST( '%$ query%' BOOLEAN MODE)");)結果は悪いです。 – StefGuev

答えて

2

Fulltextsearchモジュール(FullTextSearchableとは異なる):https://github.com/silverstripe-labs/silverstripe-fulltextsearchを見てください。これはSolrを使用し、多くの異なる柔軟な方法で、Lucene検索構文(あなたから抽象化されている)を使用してSiteTreeおよびDataObjectのサブクラスを索引付けして検索します。

警告:モジュールは安定しており、柔軟性がありますが、これにより複雑さが増します。ドキュメントを読んで(よく!)、silverstripe.orgやその他のご質問を恐れることはありません:-)

+0

私は長いこと答えてきました。私は解決策が十分であることを発見した – StefGuev

関連する問題