MTMultiSearchFeed version 1.0指定したキーワードで他のブログを検索し、関連エントリーを引用するMovable Typeのプラグインです(※MTTrackForwardの改良版)
記事のキーワードを元にlivedoor ブログ検索、教えて!GOO、Yahoo!知恵袋、はてな人力検索、はてなブックマーク、Yahoo!検索、Yahoo!ブログ検索、Googleブログ検索、でキーワード検索を行った結果を引用します。
※MTMultiSearchFeedはMTTrackForwardの改良版です。MTTrackForwardはこちらでご覧いただけます。
<MTMsf keywords="[MTEntryKeywords]" num="10"
format="%Y年%B月%e 日%k時%M分%S秒">
<div>
<MTMsfRecords>
<MTMsfHeader>
"<$MTMsfKeywords$>"
<$MTMsfCountNum$>/<$MTMsfCountAll$>
<br />
<ul>
</MTMsfHeader>
<li>
<a href="<$MTMsfLink$>"><$MTMsfTitle$></a>
<MTMsfIfPubDate>
(<$MTMsfPubDate$>)
</MTMsfIfPubDate><br />
<$MTMsfDescription$><br />
<MTMsfIfAuthor>
by <$MTMsfAuthor$>
</MTMsfIfAuthor>
<MTMsfIfCategory>
in <$MTMsfCategory$><br />
</MTMsfIfCategory>[<$MTMsfService$>]
</li>
<MTMsfFooter>
</ul>
</MTMsfFooter>
</MTMsfRecords>
</div>
</MTMsf>
検索結果をキャッシュファイルに保存することで、再構築のコストを低減しています。キャッシュの有効期限を設定することもできます。
ダウンロード
インストールする環境に次のファイルをダウンロードしてください。
ダウンロードおよびインストールをしてプラグインを利用する前に、利用規約を必ずお読みください。インストールして利用を開始した際は利用規約に同意したものとみなされます。
インストール
- ダウンロードしたファイルを解凍してください。
- 解凍したフォルダをpluginsディレクトリ(mt/plugins/)にコピーしてください。
- 書き込み可能なキャッシュ用ディレクトリを用意し、パーミッションを757または777にしてください。
※インストール後は必ずブログの設定のプラグイン管理画面で、設定を一度保存する必要があります
使い方
- ブログのプラグイン設定で、各項目を入力し、設定を保存します。
- 上記記述例および下記の「タグリファレンス」を参考にしてテンプレートにMTMsfタグを記述してください。
- 検索キーワードをカンマ(,)区切りでkeywords属性に指定してください。keywords属性を指定しない場合は、各記事に登録されているキーワードを参考にします。各記事にキーワードが設定されていない場合は何も出力されません。
- format属性を指定すると、検索結果の記事の日時をMovable Typeの日付指定書式と同様の書式に整形します。指定しない場合は、2008/01/28 15:04:22のような書式で表示されます。
- 対象となるテンプレートを再構築してください。
管理画面の設定
キャッシュディレクトリ
取得した検索結果は一時的にキャッシュディレクトリにファイルとして保存します。必ず書込み権限、実行権限を設定してください。
有効期限(秒)
キャッシュの有効期限を秒で設定します。たとえば、3600と設定すると1時間以内に同じキーワードで再構築が行われた場合、キャッシュファイルが存在すればそれを利用します。外部サービスを使用しないので通信を行わず、再構築速度が改善されることがあります。
表示数
MTMsfRecordsで表示されるアイテムの上限数を設定することができます。ただし、MTMsfタグでnum属性に値が指定されている場合はそちらが優先されます。
アプリケーションID
Yahoo!検索はYahoo! Japanが提供する検索APIを利用しており、サービス利用の際にアプリケーションIDで認証を行う必要があります。これを設定せずにYahoo!検索を使用すると、再構築中にエラーが発生します。
利用するサービス
検索に使用するサービスを選択します。ただし、MTMsfタグでservice属性に値が指定されている場合は、そちらを優先的に利用します。
タグリファレンス
MTMsfコンテナタグ
プラグインの処理結果を挿入する範囲を<MTMsf>~</MTMsf>で括ってください。
一番簡単な使用例は以下のようになります。keywordsは各記事に指定されたキーワードを使用し、表示件数、利用するサービスをブログのプラグイン管理画面にて設定した場合は以下のように簡潔になります。
<MTMsf>
マルチサーチフィード(省略) </MTMsf>
必要であればkeywords,num,service,format属性をそれぞれ指定します。
<MTMsfd keywords="web,デザイン"
num="30" service="yahoo_search,hatena_jinriki"
format="%Y/%m/%d %H:%M:%d">
マルチサーチフィード(省略) </MTMsf>
- keywords属性
- 検索するキーワードを指定します。半角カンマ「,」で区切ることで複数のキーワードを指定できます。値に"[MTEntryKeywords]"を指定すると、記事に登録されたキーワードから検索します。属性を指定しない場合も記事に登録されたキーワードから検索します。
- num属性
- 検索結果の中から最新上位何件を表示するかの上限値を指定します。プラグイン設定画面で表示数を指定している場合は、こちらが優先的に使用されます。
- service属性
- 検索に利用するサービスを半角カンマ「,」で区切って指定します。利用できるサービスは以下です。
○Googleブログ検索 : google_blog
○Yahoo!検索 : yahoo_search
(Yahoo!アプリケーションIDを管理画面で登録する必要があります)
○Yahoo!ブログ検索 : yahoo_blog
○Yahoo!知恵袋 : yahoo_chiebukuro
○はてなブックマーク : hatena_bookmark
○はてな人力検索 : hatena_jinriki
○livedoorブログ検索 : livedoor_blog
○教えて!GOO : oshiete_goo
プラグイン設定画面で利用するサービスを選択している場合でもこちらの指定が優先されます。format属性を指定しない場合も上記の書式で表示されます。
- format属性
- Movable Typeの日付指定文字を利用して、表示する日付の書式を指定できます。上記のサンプルの場合「2007/06/11 01:22:32」と表示されます。
MTMsfRecordsコンテナタグ
検索結果のテンプレートを指定してください。
<MTMsfRecords>
検索結果のテンプレート
</MTMsfRecord>
MTMSFIfHasRecords条件タグ
検索結果がある場合とない場合でテンプレートを使い分けることができます。
<MTMsfIfHasRecords>
検索結果が1件以上ある場合のテンプレート
<MTElse>
検索結果がない場合のテンプレート
</MTElse>
</MTMsfIfHasRecords>
MTMsfLink値タグ
検索結果のエントリーのURLです。
<$MTMsfLink$>
MTMsfTitle値タグ
検索結果のエントリーのタイトルです。
<$MTMsfTitle$>
MTMsfDescription値タグ
検索結果のエントリーの概要です。
<$MTMsfDescription$>
MTMsfIfPubDate値タグ
検索結果のエントリーの作成日が存在するかどうかを判別するタグです。
<MTMsfIfPubDate><$MTMsfPubDate$></MTMsfIfPubDate>
MTMsfPubDate値タグ
検索結果のエントリーの作成日(dc:date属性、pubDate属性)です。MTMsfタグのformat属性で、書式を指定できます。
<$MTMsfPubDate$>
MTMsfKeywords値タグ
検索キーワードです。検索に使用されたものがカンマ区切りで表示されます。
<$MTMsfKeyword$>
MTMsfCountAll値タグ
検索結果の総数です。
<$MTMsfCountAll$>
MTMSFCountNum値タグ
画面に出力する件数です。画面に表示される件数を表示します。
<$MTMsfCountNum$>
MTMsfService値タグ
各エントリーが検索された検索元サービス名を出力します。
<$MTMsfService$>
MTMsfIfCategory値タグ
各エントリーが登録されているカテゴリーが存在するかどうかを判別します。
<MTMsfIfCategory><$MTMsfCategory$></MTMsfIfCategory>
MTMsfCategory値タグ
各エントリーが登録されているカテゴリーを表示します。複数のカテゴリに登録されている場合は、「,」区切りで表示されます。
<$MTMsfCategory$>
MTMsfIfAuthor値タグ
エントリーの著者が存在するかを判別します
<MTMsfIfAuthor><$MTMsfAuthor$></MTMsfAuthor>
MTMsfAuthor値タグ
各エントリーの著者を表示します。
<$MTMsfAuthor$>
利用規約
ソフトウェアを利用する前にアイデアマンズ株式会社のソフトウェア利用規約をお読みください。利用規約に同意した上でご利用ください。
このソフトウェアに関してはソースコードは改変してご自由にお使い下さい。改変後のソースを公開する場合はご相談ください。
- ソフトウェア利用規約