こんにちは
質問の趣旨とは、ちょっと外れるかもしれませんが、既存のカテゴリウィジェットを、カスタマイズして表示を変更する事が出来ます。
通常では、アーカイブウィジェットでは月別表示になりますが、フィルタを使う事で、年次アーカイブを表示したり出来ます。
私のメモですが、
http://tenman.info/labo/snip/?p=2803
ドロップダウンリストの場合は、検証していませんが、
フック、widget_archives_args を widget_archives_dropdown_args に置き換えるといいかもしれないです。
ご返信ありがとうございます。
dropdownを使ってセレクトボックスを作る方法もあるようですね。
これは検索で結構出てくるので知っていました。
多分この方法で実現できるのだと思いますが、今回はあえてselectタグとwpタグを組み合わせたもので(勉強も兼ねて)作りたいと思っています。
ただ便利な機能ですので、今回のものが実現できたらその後はdropdownを使用してみたいと思います。
ありがとうございます。
どなたかわかる方いらっしゃいましたら、お願いします。
多分この方法で実現できるのだと思いますが、今回はあえてselectタグとwpタグを組み合わせたもので(勉強も兼ねて)作りたいと思っています。
勉強をかねて、という事のようなので、
まず、horizon58さんのやりたい事は、投稿のテキストエリアにコードを記述して、カテゴリのセレクトボックスの付いたフォームを作成し、検索を行いたいという事だと理解していますが、それでいいですか?
であれば、まず最初に試してほしい事は、
通常の検索機能で、何か一つの、カテゴリを指定して検索してみてください。
検索は出来ますか?
たぶん検索できないと思います。
次に、PHPが記述できるプラグインで、何かしらの、phpコードを記述していただき、投稿に、実行結果が表示されたら、
投稿を、エクスポートし、インポートしなおしたりしてみてください。
正常に、インポートやエクスポートが出来、コードの実行結果に問題は出ませんか?
投稿画面で、直接PHPコードを記述可能にするプラグインは、便利だと思いますが、horizon58さんが、そのスタイルでカスタマイズを継続していき、何らかの理由でエクスポートや、インポートの処理をしようとした時には、正しくそれらの作業が実行できなくなるなどの、問題が発生する可能性があります。
標準でカテゴリ検索機能が備わっていない。また、標準的ではないプラグインの機能拡張に依存した方法で、カスタマイズを行う方法に慣れた人は、それほど多くはないので、多分まだ回答が付かないということではないかと思います。
すみませんがちょっと内容を理解できないので、できればコードを付けて投稿していただけるとありがたいです。
あともしやり方がかわらないのであれば、無理に投稿していただかなくても構いませんので。
難しくお考えになっているようですが、単にname属性をcatにするだけでカテゴリーで絞り込み検索できますよ。WordPressには内部的にカテゴリ検索機能を持っていますので。
<form method="get" action="<?php echo esc_url( home_url( '/' ) ); ?>">
<input type="text" name="s" value="<?php the_search_query(); ?>" />
<select name="cat">
<option value="">カテゴリーで絞り込み</option>
<?php
$current_cat = get_query_var('cat');
$categories = get_categories();
if ( $categories ) {
foreach ( $categories as $category ) {
printf(
'<option value="%d" %s>%s</option>',
$category->cat_ID,
selected( $category->cat_ID, $current_cat, false ),
$category->name
);
}
}
?>
</select>
<input type="submit" name="submit" value="検索" />
</form>
ああ、「テキスト検索をカテゴリで絞り込む」わけではないのか。勘違い。
なぜ search.php を使いたいのでしょう? category.php でいいような気がします。