WordPressのカテゴリーをプルダウンで表示させる

カテゴリー:WordPress

検索画面にWordPressが持っているカテゴリーをプルダウンで表示させてい場面が出てきました。
なのでその方法をメモしたいと思います。

<?php get_query_var('cat') ?>
<?php wp_dropdown_categories("cat=$cat"); ?>
<script type="text/javascript"><!-- 
var dropdown = document.getElementById("cat"); function onCatChange() {
	if ( dropdown.options[dropdown.selectedIndex].value > 0 ) {
		location.href = "<?php echo get_option('home'); ?>
		/?cat="+dropdown.options[dropdown.selectedIndex].value;
	}
}dropdown.onchange = onCatChange;
--></script>

※2行目の用に変数を使う場合、()の中が「”」じゃ使えない
「””」にすること!ここ大事

使えるタグ

show_option_all
    (文字列) すべてのカテゴリーを含むオプションを表示する 

show_option_none
    (文字列) すべてカテゴリーを含まないオプションを表示する 

orderby
    (文字列) ソートキー。有効値:
        'ID' - カテゴリ ID(初期値)
        'name' - カテゴリ名 

order
    (文字列) ソート順。有効値:
        'ASC' - 昇順(初期値)
        'DESC' - 降順 

show_last_update
    (真偽値) 各カテゴリに属する投稿の最終更新日を表示するかどうか。有効値:
        1 (True) - 表示
        0 (False) - 非表示(初期値) 

show_count
    (真偽値) 各カテゴリに属する投稿数を表示するかどうか。有効値:
        1 (True) - 表示
        0 (False) - 非表示(初期値) 

hide_empty
    (真偽値) 投稿のないカテゴリを隠す(非表示とする)かどうか
        1 (True) - 隠す(初期値)
        0 (False) - 表示 

child_of
    (整数) 指定した カテゴリ ID の子カテゴリのみを表示する 初期値なし

exclude
    (文字列) 除外したいカテゴリ ID をカンマ区切りで指定。例えば、'exclude=4,12' とすれば、カテゴリ ID 4 と 12 を表示しない/値として返さない 初期値は除外カテゴリなし

exclude_tree
    (文字列) カンマ区切りのリストで、除外したい親カテゴリの ID を定義する。親カテゴリと、その小カテゴリをすべて除外したい時に使う
'exclude_tree=5' と指定した場合、親カテゴリー 5 およびそのすべての小カテゴリが除外される
hierarchical パラメータが true の場合 exclude の値が exclude_tree として使われる。バージョン 2.7.1 で導入されたパラメータ

echo
    (真偽値) カテゴリリストを表示する(TRUE)か、PHP で使うために値を返す(FALSE)か 初期値は TRUE
        1 (True) - 表示(初期値)
        0 (False) - 値を返す 

selected
    (整数) 表示ボックスで 'selected' としたいカテゴリ ID (これを付けるとドロップダウンメニューなどの選択値の初期値となる)デフォルトではどれにも付けない。

hierarchical
    (真偽値) カテゴリを階層形式で表示(子カテゴリをインデント)するか 初期値は FALSE
        1 (True) - 階層形式
        0 (False) - 親子同レベル(初期値) 

name
    (文字列) ドロップダウンメニューのフォーム名 デフォルトは 'cat'

class
    (文字列) ドロップダウンフォームのクラス デフォルトは 'postform'

depth
    (整数) カテゴリ階層のどのレベルまでをカテゴリリストに出力するかを指定初期値は 0(全親子カテゴリを出力) このパラメータは 2.5 以上でのみ使えます
        0 - 全ての親子カテゴリを出力 (初期値)
        -1 - 全てのカテゴリをフラット(インデントなし)形式で出力(hierarchical パラメータより優先)
        1 - 最上位カテゴリのみ出力
        n - n(数値)階層目までを出力。'2' と指定すれば、最上位とすぐ下の子カテゴリまでを出力。 

pad_counts
    (真偽値)小カテゴリからの項目を含んだリンクまたは投稿数を計算する show_counts と hierarchical が true の場合、このパラメータは自動的に true に設定される バージョン 2.9 で導入されたパラメータ
        1 (True)
        0 (False) -(初期値)