MovableType の検索結果ページなどで,最近に検索対象になった単語を一覧するための MovableType プラグインです。Excite のサーチストリームのように,同じサイトを訪れている自分以外の誰かが,どんなことに興味を持って,どんなキーワードで検索をしているのか表示できれば面白いかなと思って作ってみました。
mt-search.cgi で検索が行われると,その検索語彙が MovableType のシステムログに記録されていきます。RecentSearchString プラグインは,このシステムログから検索に用いられた語彙を抽出して表示することができます。特に設定などを必要とせず簡単に導入できますが,その反面,システムログが初期化されてしまうと,検索語彙の一覧もリセットされて表示されなくなってしまうのが珠にキズ。将来的には検索語彙だけ別ログとして残すなどして対応したいところです。まぁ,ビジタへのちょっとしたサプライズと割り切ってご利用くだされば幸いです。
検索結果ページのテンプレートなどで使用するのが最適です。インデックスアーカイブなどでも動作しますが,再構築されない限り表示される語彙が更新されないので,あまり面白くないかもしれません。定期的に再構築を行えば無理無理いけますが,そこまでする必要性はないような気もします。
MTRecentSearchStrings コンテナタグMTRecentSearchedString 変数タグ<MTRecentSearchStrings>の中でのみ動作します。最近に検索に用いられた単語を返します。
最新版のダウンロードやバグレポートはRecentSearchString の trac レポジトリでも行っています。
開発の継続のためには、技術書の購入やバグの修正、新機能の追加、コメント欄でのユーザサポートなど、意外にお金と時間を費やします。そこで、「ビールでも奢ってやるか」ですとか「これで牛丼(並)でも食え」と仰るお方からのお申し出をいつでも受け付けております。どうぞ、よろしくお願いいたしますm(_ _)m
寄付金の送付には PayPal の小額決済をご利用いただけます。
寄せられたコメント (全 10 件中、最新 5 件まで表示しています)
大変失礼しました。バグ修正版(1.01)をアップしておきましたのでご利用ください。
お世話になります。返信ありがとうございます。
キャッシュは使用していません。また、同じ検索単語は使用せず、その都度異なった数字の列(例えば、1111111111111)でテストを行いましたので、キャッシュされたpageが表示されているとは思えないのです。
それから、テスト環境はクローズドのもので、外部から検索単語が入力されることはありません。
返信が遅くなって申しわけありませんでした。
特に10個という制限は設けていません。
ただし,検索単語のうち重複するものを除いた上で lastn 個を取り出すようにしているので,同じ単語で20回検索が行われても,抽出される単語は最初の1回だけになります。
あと,MT4.2(4.1?)から検索結果ページをMTがキャッシュしているような感じなので,そのあたりも少し気をつけて見て頂けますでしょうか?
<MTRecentSearchStrings lastn="10">とすると、最近に検索された単語を10個表示してくれますが、その後に更新されている検索単語を表示してくれませんね。
最初の10個しか記録しないような仕様なのですか?
試しにログを全部消去し、検索単語を変えながら12回ほど検索を繰り返したところ、11個目以降はログには記録されているのにもかかわらず、表示できません。
このプラグインはダイナミックパブリッシング環境では使用できません。