アルファサード有限会社ではjQueryやMTMLを活用してPower CMS for MTのフロントエンドの実装や製品ベースのテンプレート等を担当いただく正社員を募集しています(求人ページへ)。

2009年11月02日
検索結果に類似キーワードを表示する - もしかしてMovable Type?

Power CMS for MTにはMovable Type標準の検索以外に2種類の独自の検索のしくみを持っています。1つはすべてのエディションに標準で付属しているPHPを利用したSQL検索(AltSearch)、もうひとつはEnterpriseエディションに付属しているPowerSearchです。

AltSearchではカテゴリや日付による検索結果の絞り込み、表示順の指定、ページ送りなど、PowerSearchではPDFやMS Officeドキュメントを含む全文検索が可能です。

これらの検索のしくみを使って『「もしかして」検索』と呼ばれる類似キーワードの表示や特定キーワードの検索リクエストに対して特定のページへの導線(リンクやバナー等)を表示させることが可能です。

以下の例はPowerCMSテンプレートセットをインストール済みの環境で、各テンプレートに対して記述する方法です。ここでは、検索ワード「MT」で検索された結果に「Movable Type」を類似語として表示させる例をご紹介します。

『「もしかして」検索』の類似キーワードの表示例

AltSearch(「検索結果(ダイナミック)」テンプレート)での記述例

<mt:altsearchquery setvar="search_query">
<mt:if name="search_query" eq="MT">
<p>
もしかして
<a href="<MTAltSearchurl>?query=Movable%20Type">
「Movable Type」
</a>?
</p>
</mt:if>

LogViewerプラグインのアクセスログ表示では、サイト内検索の検索語とマッチした件数の統計が確認できますので、検索にマッチしなかった語に対する代替検索語を提供したり、特定の検索語での検索リクエストに対してランディングページへのリンクやバナーを表示することでサイトのユーザビリティを上げることが可能です。

PowerSearch(「Hyper Estraier 検索結果」テンプレート)での記述例*

* MTEstraierMetaブロックタグ内に記述する必要があります。Enterprise版のみで利用可能。

<mt:if name="__qurey__" eq="MT">
<p>
もしかして
<a href="<$MTCGIRelativeURL$><$MTEstraierScript$>?query=Movable%20Type&amp;blog_id=<$MTBlogID$>&amp;[...other parameter]">
「Movable Type」
</a>?
</p>
</mt:if>

likeモディファイアの正規表現によるマッチングを活用すれば、より柔軟にカスタマイズが可能になります。是非ご活用ください。

カテゴリー:テンプレート作成Tips技術情報

トラックバック

このエントリーのTBPingURL:
http://powercms.alfasado.net/mte/mt-tb-powercms.cgi/53

コメントを投稿する

TypeKey IDを使ってサインインしてください。

(初めてコメント投稿される方は、承認が必要になることがあります。承認されるまではコメントは表示されませんのでご了承ください)

  • Alfasado
Alfasado