有料オプションでヘッダを消したときや、はてなダイアリーの見方がよくわからない閲覧者向けなどに、改めて検索フォーム(検索ボックス)を表示させている人がけっこういます。
日記のヘッダ部にある「日記」検索フォームを、ページ内の他の所に作ってみましょう。「searchformモジュール」で作れるけど、細かい指定ができるのでタグで書いてみます。ヘッダやフッタに
<form method="POST" action="searchdiary"> <input size="20" value="サイト内検索" type="text" name="word"> <input value="検索" type="submit" name=".submit"> </form>
のように書くと
このような検索フォームができて、自分の日記を検索できます。
同じように、ページのヘッダやフッタに
<form method="POST" action="/search"> <input type="text" name="word" value="" size="20"> <input type="submit" name="keyword" value="キーワード"> <input type="submit" name=".submit" value="検索"> </form>
のように書くと
キーワード検索のフォームが表示され、はてなダイアリーのキーワード検索とはてな検索のフォームができます。
カテゴリー名をぜんぶ表示せずに、プルダウンメニューで選べるようにする方法です。sectioncategoryモジュールで作るのが簡単で、これは見出しカテゴリーの保存に対応していて、日記上でカテゴリーを増やしていくと自動的にメニューを追加してくれます。メニューの順は詳細設定画面の『日記のカテゴリー一覧』の欄に記入されている順です。
というわけでそのモジュールは便利なのですが、タグで書く方法もご紹介しておきます。「見出しカテゴリーの保存」には対応しないものの、構造を単純にできたり、メニューに『この日記のカテゴリー』のような初期値を表示できるのが場合によっては使えるので。
ページのヘッダやフッタに、
<form method="POST" action="searchdiary"> <select name="word"> <option>この日記のカテゴリー</option> <option value="*[雑記]">雑記</option> <option value="*[音楽]">音楽</option> <option value="*[web]">web</option> <option value="*[はてな]">はてな</option> </select> <input value="Go" type="submit"> </form>
のように書くと、
プルダウンメニューができて、「Go」を押すとそのカテゴリーの記事だけを読むことができます。
id:limboさんのところで詳述されており、サイドバーに設置例もあったのでそちらにリンクして説明に変えさせて頂きます。
そちらでは各々の検索フォームの説明や、<fieldset>、<legend>というタグが使われています。
<form method="GET" name="search" action="http://dictionary.goo.ne.jp/search.php" target="goo"> <fieldset> <legend>goo辞書</legend> <input type="text" name="MT" value="" size="10"> <input type="submit" value="Go!"><br> <input id="ej" type="radio" name="kind" value="ej" checked><label for="ej">英和</label> <input id="je" type="radio" name="kind" value="je"><label for="je">和英</label> <input id="jn" type="radio" name="kind" value="jn"><label for="jn">国語</label> <input type="hidden" name="FROM" value="USER"><br> <a href="http://www.goo.ne.jp/">goo.ne.jp</a> </fieldset> </form>
のように書くと、
となり、検索フォームの説明がつけやすくなります。スタイルシートで指定するとき、「fieldset」や「legend」の部分の見栄えが変えられるなどの利点があります。
フォームというのはブラウザ上からメールソフトを立ち上げたり、アンケートを記入したり、検索したりといった動作を閲覧者が行えるようにするものです。その動作は、プロバイダーやはてなダイアリーのような“Webサーバー”が設置している、「CGIプログラム」というものを通して行われています。なのでタグで動作を指定してみても、動作を要求したサーバーがその動作のCGIを提供していなければ利用できません。
はてなダイアリーではフォームを使える場面が少ないと思いますが、もう少し詳しく知りたい方は下記参考リンクなどをご覧ください。
画像を貼ってみるに戻る← | →日記の中で使うタグ(1)に進む