検索オプションをつける

検索オプションをつける

Posted at November 6,2005 11:51 PM
Tag:[Customize, MovableType, Search]

検索ページにある「エントリー」「コメント」等のオプション指定方法についてご質問を頂きましたので、本エントリーでご紹介します。

この元ネタは Movable Type に付属している検索機能の、検索結果画面の設定

search_templates/default.tmpl

を利用しています。

まず「エントリー/コメント/両方」をオプション指定するには、検索フォームに下記のリストのように青色部分を追加します。

<form method="get" action="<$MTCGIPath$><$MTSearchScript$>">
<input type="hidden" name="IncludeBlogs" value="<$MTBlogID$>" />
<p><input name="search" class="search" size="31" value="" /> <input class="searchButton" type="submit" value="Search" /></p>
<p><input type="radio" name="SearchElement" value="entries" checked="checked" />エントリー
<input type="radio" name="SearchElement" value="comments" />コメント
<input type="radio" name="SearchElement" value="both" />両方</p>
</form>

下記のように label 要素を付与すれば文字の部分をクリックしても選択状態になるので、ユーザビリティが向上します(推奨)。

<form method="get" action="<$MTCGIPath$><$MTSearchScript$>">
<input type="hidden" name="IncludeBlogs" value="<$MTBlogID$>" />
<p><input name="search" class="search" size="31" value="" /> <input class="searchButton" type="submit" value="Search" /></p>
<p><input type="radio" id="entries" name="SearchElement" value="entries" checked="checked" /><label for="entries">エントリー</label>
<input type="radio" id="comments" name="SearchElement" value="comments" /><label for="comments">コメント</label>
<input type="radio" id="both" name="SearchElement" value="both" /><label for="both">両方</label></p>
</form>

サイドメニューの検索フォームに追加する場合は、幅を考慮して下記のようなプルダウンメニューにすると良いでしょう。とりあえず当サイトにもつけてみました(タグ・CSSは若干変更しています)。

<form method="get" action="<$MTCGIPath$><$MTSearchScript$>">
<input type="hidden" name="IncludeBlogs" value="<$MTBlogID$>" />
<p><input name="search" class="search" size="31" value="" /> <input class="searchButton" type="submit" value="Search" /></p>
<p><select name="SearchElement">
<option value="entries" selected="selected">エントリー</option>
<option value="comments">コメント</option>
<option value="both">両方</option>
</select></p>
</form>

CSS は select に対して下記のように設定します。

select {
    font-size: 10px;
}

検索結果画面と同じように「大文字/小文字を区別」や「正規表現で検索」を設定する場合は、さらに下記のチェックボックスをフォーム内に追加します。

<input type="checkbox" name="CaseSearch" /> 大文字/小文字を区別 <input type="checkbox" name="RegexSearch" /> 正規表現で検索

以上です。
なお、本来の検索結果画面での日本語部分は

<MT_TRANS phrase='xxxxx'>

というフォーマットになっていますが、Movable Type のCGIスクリプトを通さないのであれば、上記サンプルリストのように日本語を直接記述しましょう。

関連記事
zenback
人気エントリー
トラックバックURL


トラックバック

続・コメントも検索対象に from やむやむ
以前 検索の対象に コメントも含める こんな 小細工を 検索結果の画面に プラス... [続きを読む]

Tracked on November 7, 2005 6:42 AM

サイト内検索にオプションを付けました from あそび
当サイトの上方にあるサイト内検索に検索オプションを付けました。 今までのサイト... [続きを読む]

Tracked on November 16, 2005 7:07 PM

カスタマイズ覚え書き2 from (*`・ω・´)ノ やっとう
この記事内では 『小粋空間』様のカスタマイズを参考にしています ありがとうござ... [続きを読む]

Tracked on June 4, 2006 9:20 PM
コメント

おはようございます。検索結果の画面には yujiroさんのところのを真似して コメントも検索対象になるようにしてたんですけど、サイドメニューのところにも・・・・・っていうの、いいですね。あと、文字の部分をクリックしても・・・っていうの。2点 あらたに真似させていただこうと思います。ありがとうございます。

[1] Posted by さえら : November 7, 2005 5:38 AM

早速夜にでもやってみたいと思います。ありがとうございました。

[2] Posted by oyaji : November 7, 2005 8:26 AM

yujiroさん、うまくできました。またまた本当にありがとうございます。

[3] Posted by oyaji : November 7, 2005 9:12 PM

>さえらさん
こんばんは。
早速のご利用&トラックバック、ありがとうございます!
サイドメニューはラジオボタンがはいりきらないので見送っていたのですが、プルダウンメニューを思いついたのでいれることにしました。

label要素の方もご利用ありがとうございます。

>oyajiさん
こんばんは。
ご連絡ありがとうございます。
うまくできたようで良かったです。
ではでは!

[4] Posted by yujiro : November 7, 2005 9:31 PM

はじめまして。以前からMT導入にあたって時々訪問させていただいています。参考になることが多く感謝しています。

この記事とは直接関係ないのですが、MTの検索機能について質問させていただきたくこちらにコメントさせていただきました。

質問は、自分が開設しているMTを使っているブログでMTの検索機能を使ってトップページから検索を行うと日本語で検索した場合検索ワードが文字化けしてしまい、検索できません。

解決法をご存知でしたらアドバイスをいただけますでしょうか。よろしくお願いします。

[5] Posted by skyfan : May 16, 2006 6:46 PM

>skyfanさん
こんばんは。
遅くなってすいません。
ご質問の件ですが、mt-config.cgi の CGIPath のドメイン部分(skyfan.s181.xrea.com)をトップページと同じドメイン(d-log.xrea.jp)に修正して全ページを再構築してみてもらえますでしょうか。ドメインの後の "mt" はそのまま残してください。
こちらで確認したところ、検索のURLを

http://d-log.xrea.jp/mt/mt-search.cgi

に変更して試したところ、正常に表示されました。

また参考までに、skyfan.s181.xrea.com から d-log.xrea.jp へのリダイレクトを設定等を行っているか教えて頂けますでしょうか。

以上です。
それではよろしくお願い致します。

[6] Posted by yujiro : May 18, 2006 11:12 PM

yujiroさん、お忙しいところ丁寧に回答くださりありがとうございます。

早速、ご指摘の通りmt-config.cgiの該当部分を修正し、再構築したところ正常に検索できるようになりました。
またリダイレクトの設定ですが、xreaの方でドメインを変更しただけで、特になにもやっていません。

このたびは本当にありがとうございました。今後も小粋空間の情報を参考に、少しずつmtについて勉強していきたいとおもいます。ありがとうございました。

[7] Posted by skyfan : May 20, 2006 10:26 AM

>skyfanさん
こんばんは。
ご連絡ありがとうございました。
無事に解消されたようでなによりです。
リダイレクトの件もご連絡ありがとうございました。
なおこの件につきましては情報として別途エントリーさせて頂く予定です。
ではでは!

[8] Posted by yujiro : May 20, 2006 11:33 PM

こんにちは。
いつも役立つ情報を配信していただきありがとうございます。
ブログをカスタマイズする上ではとても助かっています。

今回こちらの検索オプションを導入させていただきました。
うまく表示出来たのですが検索オプションの上下に1行分の余白が出来てしまいます。
pタグは削除してみたのですがどうしても消えません。
どのようにしたら消えるのでしょうか?

[9] Posted by スプリング・エフェメラル : December 24, 2006 4:46 AM

>スプリング・エフェメラルさん
こんにちは。
ご質問の件ですが、検索オプションに select タグをお使いであれば

select {
    margin:0;
    font-size: 10px;
}

でいかがでしょうか?
それではよろしくお願い致します。

[10] Posted by yujiro : December 27, 2006 5:47 PM

はじめまして

小粋空間さんの検索ページのように
「タイトル」のみを検索対象にするにはどうすればいいのでしょうか?
「id="title"」や「id="entrytitle"」などやってみましたが、
うまく動かないようです。

ちなみに、小粋空間さんの検索ページで、
タイトルのみで検索しようとすると、ダウンロード画面が出てしまいます。

よろしくお願いします。

[11] Posted by kaz : April 20, 2007 1:43 AM

>kazさん
こんにちは。
ご返事遅くなり申し訳ありません。
ご質問の件ですが、「タイトル」というのは当サイトの検索結果ページの再検索フォームのラジオボタン横にある「タイトル」を指されておりますでしょうか。
であれば申し訳ありませんが単なる誤字で、「コメント」が正解です。Movable Type のデフォルトで用意されたサイト内検索で、タイトルのみの検索はないようです。

下記で検索対象をタイトルのみにするという手はありそうです。
http://java.cocolog-nifty.com/blog/2005/12/typepadmtajaxja_c70d.html

それではよろしくお願い致します。

[12] Posted by yujiro : April 24, 2007 4:49 PM

yujiroさん、ご回答ありがとうございます。

今回の方法では、タイトルのみ検索はできないようですね。
MTの管理画面のように、タイトル検索ができると便利そうなのですが…

教えていただいたサイトの方法で検討してみます。
ありがとうございました。

[13] Posted by kaz : April 27, 2007 1:47 AM

>kazさん
こんばんは。
ご連絡ありがとうございました。
ちなみにMTの管理画面の検索機能はタイトル検索ではなく、本文まで検索をして、タイトルのみ表示しているようです(そういう表示であれば検索結果画面でもカスタマイズ可能です)。
それではよろしくお願い致します。

[14] Posted by yujiro : April 29, 2007 1:51 AM
コメントする
greeting

*必須

*必須(非表示)


ご質問のコメントの回答については、内容あるいは多忙の場合、1週間以上かかる場合があります。また、すべてのご質問にはお答えできない可能性があります。予めご了承ください。

太字イタリックアンダーラインハイパーリンク引用
[サインインしない場合はここにCAPTCHAを表示します]

コメント投稿後にScript Errorや500エラーが表示された場合は、すぐに再送信せず、ブラウザの「戻る」ボタンで一旦エントリーのページに戻り(プレビュー画面で投稿した場合は、投稿内容をマウスコピーしてからエントリーのページに戻り)、ブラウザをリロードして投稿コメントが反映されていることを確認してください。

コメント欄に(X)HTMLタグやMTタグを記述される場合、「<」は「&lt;」、「>」は「&gt;」と入力してください。例えば「<$MTBlogURL$>」は「&lt;$MTBlogURL$&gt;」となります(全て半角文字)