現在の検索バーを絞り込んで、自分の「イベント」カスタム投稿タイプ内でのみ検索するようにしています。
他の種類の投稿にはインデックスを付けず、「イベント」だけにします。
これが検索バーです。
<form id="searchform" action="http://localhost:8888/ltc" method="get">
<input class="inlineSearch" type="text" name="s" value="Enter a keyword" onblur="if (this.value == '') {this.value = 'Enter a keyword';}" onfocus="if (this.value == 'Enter a keyword') {this.value = '';}" />
<input class="inlineSubmit" id="searchsubmit" type="submit" alt="Search" value="Search" />
</form>
そしてsearch.php:
<?php if ( have_posts() ) : ?>
<h1><?php printf( __( 'Search Results for: %s', 'twentyten' ), '' . get_search_query() . '' ); ?></h1>
<?php
/* Run the loop for the search to output the results.
* If you want to overload this in a child theme then include a file
* called loop-search.php and that will be used instead.
*/
get_template_part( 'loop', 'search' );
?>
(私は最初にインデックスを正しくしたいだけなので、私はまだデフォルトのsearch.phpページをまだ編集していません)
ありがとう
カスタム投稿タイプを検索するには、&post_type=events
クエリに追加します。これを実現するには、フォームを次のように編集します。
<form id="searchform" action="http://localhost:8888/ltc" method="get">
<input class="inlineSearch" type="text" name="s" value="Enter a keyword" onblur="if (this.value == '') {this.value = 'Enter a keyword';}" onfocus="if (this.value == 'Enter a keyword') {this.value = '';}" />
<input type="hidden" name="post_type" value="events" />
<input class="inlineSubmit" id="searchsubmit" type="submit" alt="Search" value="Search" />
</form>
あなたはどんな種類の投稿に対してもこれを行うことができ(既存のものである必要があるか破棄されるでしょう)そして丁度うまくいくでしょう
カスタム投稿を検索するには、投稿タイプを値セクションに入力するだけです。
ex:私のカスタム投稿タイプは "blogpst"です。 2番目の入力フィールドで実際に何をしたのか見てみましょう
<input type="hidden" name="post_type" value="blogpst" />
見て、私がやったこと。値のセクションに投稿タイプを入れただけです。
Hansyと一緒にタグ付けするには、ここに私の投稿をチェックしてください: ページ上にある場合のみページを検索します ラジオチェックボックスを使ってユーザーに検索したいもののオプションを与えます。