Osclassの日本語キーワード検索問題の対策法

Osclassはポータルサイト、マッチングサイトに特化したCMSで、使い勝手や機能面は申し分ないのですが、個人的には「キーワード検索」が思ったような動きをしてくれないのがネックでした。

例えば「サンプル広告の例です」という広告のタイトルがあった場合、「サンプル広告の例です」のキーワード検索だとヒットしますが、「サンプル」「広告」「の例」「です」のような検索の場合はヒットしません。

キーワード検索がヒットしない問題について

この件に関してはOsclassの公式見解が出ています。

また、公式ドキュメントでもこのようなアナウンスがなされています。
Fine-Tuning MySQL Full-Text Search – Improving search – OSClass

MYSQLのft_min_word_lenを変更(FullTextIndex でインデックスされる最小文字数を変更)できれば良いようなことだと思いますが、
しかしかながらこの方法はレンタルサーバーを利用している場合は実戦できないでしょう。

そこで、別の解決策を色々探していた所、フォーラム(英語)に参考になるページがありましたので試してみることにしました。

コアファイルを修正してキーワード検索がヒットしない問題を回避

フォーラムで紹介されていたのは、コアファイル内のSearch.phpをカスタマイズしてこの問題を回避する方法のようです。

oc-includes/osclass/model/Search.php
のファイルを開きます。
Osclassの日本語キーワード検索問題の対策法

Search.phpの以下の3カ所を、↓の下の記述に書き換えます。

797行目

919行目

1296行目

※Osclass Ver3.6.1 のSearch.phpの行数を指定しています。バージョンによっては行数が違う場合がありますので注意してください。

当ブログでは、本カスタマイズによる挙動を継続して検証中です。完全に問題が解決したかどうかは分かりませんが、上記のような手直しにより管理画面の広告検索及び、サイトヘッダー、サイドメニューからのキーワード検索の精度は上がるはずです。

参考サイト
how to change from fulltext search(match against) to other search(LIKE) query?

    SNSでもご購読できます。

    コメントを残す

    *