2005-05-10 日現在、Blogger にカテゴリー機能はない。で、カテゴリー・サーチ用のサービスはないものかと調べていたら、宮本氏のサイト内カテゴリ検索方法というページを見つけた。
要約すると、「Google のタイトル検索用演算子 intitle:タイトル中の文字列 を使ってタイトル中のカテゴリー文字列だけを検索すれば、擬似カテゴリー検索になる」というもの。サイト側の手順としては
- タイトルにカテゴリー文字列を埋め込んでおく
- カテゴリー用の文字列を検索するリンクを用意する
というわけで、早速、うちのブログでもカテゴリー用の文字を埋め込んでみた。書式は |category| という形。複数のカテゴリーに含まれる場合は、|category1|category2| と書く。カテゴリーを複数持つ時、[category1][category2] な書式よりスマートに見えるのだけど、どうだろう。
さて、カテゴリー用検索用のリンクだけど、フォームを使って提供する手もある:
上のフォームのソースは以下の通り:
<form method="GET" action="http://www.google.com/search"> <select name="q" size="1"> <option selected value="">Category</option> <option value="intitle:Blogger">Blogger</option> <option value="intitle:"ChangeLogメモ"">ChangeLog メモ</option> <option value="intitle:Emacs">GNU Emacs</option> <option value="intitle:Google">Google</option> <option value="intitle:HTML | intitle:CSS">HTML & CSS</option> <option value="intitle:TeX | intitle:LaTeX">TeX & LaTeX</option> </select> <input type="hidden" name="sitesearch" value="at-aka.blogspot.com" /> <input type="hidden" name="ie" value="UTF-8" /> <input type="hidden" name="hl" value="ja" /> <input type="submit" value="Search" /> </form>
<input type="hidden" name="sitesearch" value="at-aka.blogspot.com" />
で自分のブログだけを検索対象にして、<option value="intitle:カテゴリー名">カテゴリー</option>
でタイトル中のカテゴリーを検索している。
Google を使う方法は、Google に自分のページが見つけてもらえてないと使えなくて、最新記事の検索ができない所が泣き所だけれども、検索文字列をサイト側で自由に提供できるのが便利かも。
- Ref. Google Hacks―プロが使うテクニック&ツール100選 (O'Reilly)
こちらの記事を参考に、自分のサイトにカテゴリを追加しました。ホント、いつもお世話になってます (_O_)
ReplyDeletetoshi さん、コメントありがとうございます。
ReplyDeleteそうおっしゃって下さると、本当に嬉しいです。
始めまして。友人の紹介で@akaさんのブログにたどり着きました。Tetsuと申します。@akaさんが書いた記事をいっぱい読ませて頂き、2005年5月10日の「Blogger でカテゴリー・サーチ」と言う記事のなかのフォームをそもままコピペで自分のブログのtemplateの中に入れました。それによって、プルダウンのCategory Searchはブログにのりました。だが、その後、@akaさんの他の記事を読んで、googleよりも、BloggerのSearch Engineを使った方が良いと言う事で、googleからそちらへ変えようとしたのですが、全くのHtml素人の為、やり方が分かりません。"www.google.com/search"を"search.blogger.com"に変えるだけではやっぱり甘かったようです。良ければ、フォームの中の変更するとこを教えて頂けないでしょうか?どうぞ宜しくお願いします。
ReplyDeletetetsu さん、はじめまして。tetsu さんのブログを見ました。次の二箇所を変更すれば、Blog Search が使えるようになると思います。
ReplyDelete(旧) <form method="get" action="http://www.google.com/search">
(新) <form method="get" action="http://search.blogger.com/">
(旧) <input name="sitesearch" value="tetsu-2006.blogspot.com" type="hidden">
(新) <input name="bl_url" value="tetsu-2006.blogspot.com" type="hidden">
もし、うまくいかなければ、気軽にコメント下さいね。
@akaさん、
ReplyDelete速やかなご返信、誠にありがとうございます。
実際、僕も@akaさんが書いた事を試しましたが、やはり、検索が僕のブログに限らず、全Bloggerのブログになっちゃいます。要するに、searchのwindowの中には:「intitle:カテゴリー」のみが出て、「blogurl:at-tetsu-2006.blogspot.com」が出ないのです。どうしてでしょう。
その間、@akaさんのブログからM氏の記事に飛び、そこにコメントしたDanchongさんの手法を若干自己流に変えてやってみました。
http://netcf2.blogspot.com/2005/11/blogging-generate-categories-for-your.html
この手法だと、TitleとPostingの中にカテゴリーの単語が入ると引っかかるため、ゆるいkey wordだと、カテゴリーがバラバラになります。従って、僕はsearch key wordをTitleにいれる時に、最初の文字だけダブらせてユニークなkey wordを作ります(例:News = NNews). このようにすれば、僕は全部の記事のカテゴリーを決められます。
勿論、これをpull-down式に出来たら、さらに場所が節約できるので、もっと良いと思いますが。最低限のCategoryが出来たので良かったです。
これも@akaさんのブログを読んで勉強できたお陰です。本当にありがとうございます。これからも宜しくお願いします。
先程の修正に加えて次の修正を足すと、Blog Search が使えるようになることを確認しました。
ReplyDelete(旧) <select name="q" size="1">
(新) <select name="as_q" size="1">
これできっと大丈夫なはずです。
Blog Search を使ったカテゴリー検索については説明不足な点が多いですね。後で修正しておきます m(_ _)m。
PS.
---
頭文字二重化のユニーク・キーワード作りは面白い手法ですね。