blog_ajax_json_search.jsにパッチ:コメントも含めて検索
なおゆきさん(サイト『暴想』)作の全文検索スクリプトは、記事本文の全文検索が出来るようになっていますが、コメントまで含めて検索が出来たらもっと便利そう……。と前々から思っていました。
で、考えてみたら、『ココログプロとかTypepadとかMTとかブログ人とかその他のブログサービスとかでもAjaxでバックナンバーを検索するJavaScript』の方であれば、テンプレートを変更するだけでいけそうだと思ったので試してみたところ、うまくいったみたいなのでメモ書きしておきます。
テンプレート(search_data.txt)を以下のように変更して保存・反映すれば、コメントも含めて検索出来るようになります。
{
data:[
<MTEntries all="1">{
title:"<$MTEntryTitle remove_html="1" encode_js="1"$>"
,link:"<$MTEntryLink$>"
,body:"<$MTEntryBody remove_html="1" encode_js="1"$><$MTEntryMore remove_html="1" encode_js="1"$><MTComments>【<$MTCommentAuthor remove_html="1" encode_js="1"$>】<$MTCommentBody remove_html="1" encode_js="1"$></MTComments>"
},</MTEntries>
{title:"",link:"",body:""}
]
}
あと、JavaScriptの方で検索語のハイライトがコメント部でも効くようにパッチをあてました。
オリジナルの検索ボックス用HTMLの2行目を、
修正したスクリプトはこちら。
ついでに、
- ハイライト処理で表示が崩れることがあったのを修正(といってもcocolog_ajax_search.jsの処理をそのままコピーしただけ)
- 検索語をなにも指定せずに検索したとき表示される記事の件数が実際の件数より1多かったのを修正
『暴想: 自分のココログを全文検索するJavaScript』(cocolog_ajax_search.js)の方でも同様のことが出来れば、フリーやベーシックなんかでも使えるんですけど……こちらはarchive.htmlから辿って、(月毎等の単位でひとつのHTMLにまとまった)バックナンバーを順次取得するようになっているのですが、バックナンバーの中にはコメントまでは含まれていないのですよねぇ。
個々の記事を地道に取得するようにすれば可能ですが……速度的に難点が。もっと上手い方法はないですかねぇ。
2006/05/14(日) 02:12 | 固定リンク
| 記事の編集(管理者用)
「おもいつき」カテゴリの記事
- 【AutoPagerize】Google 画像検索対応スクリプト(AutoPagerize本体をいじらない版)(2009.04.18)
- ふと気になったどうでもいいこと(2009.11.12)
- TwitDungeon:Twitterでダンジョン巡り?!(2009.10.06)
- 続き物などをまとめて『読んだ4!』に登録する『ぜんぶ読んだ4!』(2009.09.30)
- 【ココログ】過去記事をN件ずつさかのぼって表示するスクリプト(2007.08.29)
「ウェブログ・ココログ関連」カテゴリの記事
- 【ココログ】アーカイブページに目次とページングを付加するJavaScript(2006.07.14)
- 【ココログ】管理画面のURL(sheme)がhttpsからhttpに変わった?(2009.09.17)
- 【ココログ】過去記事をN件ずつさかのぼって表示するスクリプト(2007.08.29)
- 【ココログ】コメント出来ないときに使ってみるブックマークレット(2007.03.27)
- 【ココログ】トップページにコメント欄を表示するスクリプト(2009.06.14)
「パソコン・インターネット」カテゴリの記事
- PCで書道って、実は一般的だった?(2010.01.29)
- 【AutoPagerize】Google 画像検索対応スクリプト更新(ver.0.01f)(2010.01.18)
- 【AutoPagerize】Google 画像検索対応スクリプト(AutoPagerize本体をいじらない版)(2009.04.18)
- 【Excel】色一覧(2006.05.24)
- @niftyのダイナミックDNS IPアドレス更新画面が酷い件(2009.12.02)
「覚書」カテゴリの記事
- 【ココログ】アーカイブページに目次とページングを付加するJavaScript(2006.07.14)
- 【Excel】色一覧(2006.05.24)
- Twitter初入会から4ヶ月後、自分がいかに面倒くさがりであるかを知る。(2009.10.15)
- AmazonのProduct Advertising API認証プロキシ公開(REST)(2009.07.03)
- 【JavaScript】各種色指定用の文字列を16進カラーコード(#xxxxxx)に変換(2007.11.29)
この記事へのトラックバック一覧です: blog_ajax_json_search.jsにパッチ:コメントも含めて検索 :
» 激速!「Ajax」でのブログ内全文検索 トラックバック Project MultiBurst
Ajaxを使った、ブログ内の高速全文検索を発見しました。 恐ろしいくらい高速です(^^;) 参考URL MovableType備忘録: ブログ内検索を高速化 風... 続きを読む
受信: 2006/09/22 13:43:20
» Movable Type記事検索の高速化 トラックバック いるすか
リンク集で検索できるようになったと喜んでいたのですが,過去ログを全部移植したら,... 続きを読む
受信: 2006/12/27 19:52:42
» Ajaxを使ったサイト内高速全文検索エンジンを導入 トラックバック ブランドって何だぁ?
またまた暴想様 から頂戴いたしました。元 続きを読む
受信: 2007/01/08 1:57:18
» 今日のMovable Type:Ajaxを利用したMT用超高速検索システムはスゴすぎる! トラックバック 世界中の1%の人々へ
Movable Typeの可能性がAjaxによりまたひとつ、広がった 昨年4月末から悩んでいた事が、あっけなく解決した。 というのは、Movable Typeの検索機能が弱いので、XMLを利用した検... 続きを読む
受信: 2007/03/03 4:14:52
» Ajaxによる高速サーチの導入 トラックバック デジクロ備忘録
参考サイト 風柳亭 - 別館:書庫のある庵 -:blog_ajax_json_... 続きを読む
受信: 2007/03/08 13:29:16


はじめまして。なおゆきさんのサイトから辿りつきました。
非公開のメモ用にココログを使っているので、この検索システムは大変有り難く使わせていただいています。
ところで、このスクリプトでキーワードを検索することはできないでしょうか。素人解釈で、<$MTEntryKeywords$>などを入れ込んでみたのですが、まるきり歯が立ちませんでした。御教えいただけると幸いです。
投稿: lem | 2009/07/10 13:19:09
lem さん、どうもです。
あれ、<$MTEntryKeywords$>でタグはあっているみたいですが……
当方のサイトの場合、
,body:"<$MTEntryBody remove_html="1" encode_js="1"$><$MTEntryMore remove_html="1" encode_js="1"$>[<$MTEntryKeywords remove_html="1" encode_js="1"$>]<MTComments>【<$MTCommentAuthor remove_html="1" encode_js="1"$>】<$MTCommentBody remove_html="1" encode_js="1"$></MTComments>"
のようにして試してみると、キーワードも検索でひっかかって来ましたが、できない場合もあるということでしょうか……。
投稿: 風柳>lem さん | 2009/07/10 19:48:05
ありがとうございます。コピペしたら上手く行きました。
調子に乗ってもうひとつなんですが、風流さんのスクリプトにリンクしようとするとエラー(now searching................が続く)になってしまいます。
上にある文字列をコピーして、なおゆきさんの検索用HTMLに嵌め込んでいるつもりなのですが…。何か原因になりそうなことがありましたら、御教えいただけると助かります。
投稿: lem | 2009/07/10 22:43:29
| 何か原因になりそうなことがありましたら
たぶん……ですが、原因がわかった(*1)と思いますので、本サイトに置いてある
http://furyu.tea-nifty.com/script/blog_ajax_json_search.js
の方を修正しました。
よろしければ、もういちど置き換えて試していただけますか?
(*1) 読込んでいる prototype.js のバージョン違いのため。prototype.jsを使わずに検索データを取得するように修正しました。
投稿: 風柳>lem さん | 2009/07/11 2:26:07
ありがとうございます!うまくいきました。
スクリプトをblog_ajax_json_search.jsに置き換え、prototype.jsへのリンクを消しました。
これで長文の検索にも不安がなくなりました。本当にありがとうございました。
投稿: lem | 2009/07/11 9:45:17