- サイトデザイン工事中です。ご意見をお寄せください。
- 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細)
テンプレートタグ/wp dropdown categories
目次 |
説明
送信ボタンのないセレクトボックス(ドロップダウンメニューなど)を使ったカテゴリリストを表示します。
このテンプレートタグは WordPress 2.1 以上でのみ使えます。
使い方
<?php wp_dropdown_categories('引数'); ?>
用例
デフォルトでの使い方
<?php $args = array( 'show_option_all' => '', 'show_option_none' => '', 'orderby' => 'ID', 'order' => 'ASC', 'show_last_update' => 0, 'show_count' => 0, 'hide_empty' => 1, 'child_of' => 0, 'exclude' => '', 'echo' => 1, 'selected' => 0, 'hierarchical' => 0, 'name' => 'cat', 'class' => 'postform', 'depth' => 0 ); ?>
デフォルトでは次のように表示:
- カテゴリ ID の昇順にソート
- 最終更新日は非表示
- 各カテゴリの投稿数は非表示
- 空の(投稿のない)カテゴリは非表示
- 除外カテゴリなし
- カテゴリを表示(表示するか値として返すか選べるので)
- フォームの
'selected'(初期選択値)とするカテゴリなし - カテゴリを階層型構造で表示しない
- フォーム名を
'cat'とする - フォームのクラスを
'postform'とする - 階層の深さ制限なし
送信ボタン付きドロップダウンメニュー
WordPress サイドバーの箇条書きリスト内に、HTMLフォームの送信ボタン付き階層型カテゴリ・ドロップダウンリストを表示、各カテゴリの投稿数も表示。
<li id="categories">
<h2><?php _e('Categories:'); ?></h2>
<form action="<?php bloginfo('url'); ?>" method="get">
<?php wp_dropdown_categories('show_count=1&hierarchical=1'); ?>
<input type="submit" name="submit" value="view" />
</form>
</li>
JavaScript を用いた送信ボタンなしドロップダウンメニュー
例は show_option_none パラメータを使った例です。Moshu のフォーラムの投稿から拾われました。
<li id="categories"><h2><?php _e('Posts by Category'); ?></h2>
<?php wp_dropdown_categories('show_option_none=Select category'); ?>
<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>
</li>
<li>
JavaScript を用いた送信ボタンなしドロップダウンメニュー (2)
この例では echo パラメータ (echo=0) が使われています。preg_replace は JavaScript のコードを追加しています。JavaScript が使えない環境でも動作します (送信ボタンが noscript タグ内に埋め込まれています)。
<li id="categories">
<h2><?php _e('Posts by Category'); ?></h2>
<form action="<?php bloginfo('url'); ?>/" method="get">
<?php
$select = wp_dropdown_categories('show_option_none=Select category&show_count=1&orderby=name&echo=0');
$select = preg_replace("#<select([^>]*)>#", "<select$1 onchange='return this.form.submit()'>", $select);
echo $select;
?>
<noscript><input type="submit" value="View" /></noscript>
</form>
</li>
パラメータ
- 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) -(初期値)
-
変更履歴
関連
the_category, the_category_rss, single_cat_title, category_description, wp_dropdown_categories, wp_list_categories, get_the_category, get_category_parents, get_category_link, is_category, in_category wp_list_authors, wp_list_categories, wp_list_pages, wp_list_bookmarks, wp_list_comments, wp_get_archives, wp_page_menu, wp_dropdown_pages, wp_dropdown_categories, wp_dropdown_users
最新英語版: WordPress Codex » Template_Tags/wp_dropdown_categories (最新版との差分)