• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

「テンプレートタグ/wp dropdown categories」の版間の差分

提供: WordPress Codex 日本語版
移動先: 案内検索
(JavaScript 利用の送信ボタンなしメニューの例を追加(en:Template Tags/wp_dropdown_categories 2008年1月22日 (火) 08:28 Fastagent 版)/ページ様式微調整)
(2.5: depth パラメータを追加。)
26行目: 26行目:
 
'order' => 'ASC', 'show_last_update' => 0, 'show_count' => 0, 'hide_empty' => 1,  
 
'order' => 'ASC', 'show_last_update' => 0, 'show_count' => 0, 'hide_empty' => 1,  
 
'child_of' => 0, 'exclude' => '', 'echo' => 1, 'selected' => 0, 'hierarchical' => 0,  
 
'child_of' => 0, 'exclude' => '', 'echo' => 1, 'selected' => 0, 'hierarchical' => 0,  
'name' => 'cat', 'class' => 'postform');
+
'name' => 'cat', 'class' => 'postform', 'depth' => 0);
 
</pre>
 
</pre>
 
デフォルトでは次のように表示:
 
デフォルトでは次のように表示:
39行目: 39行目:
 
* フォーム名を <code>'cat'</code> とする
 
* フォーム名を <code>'cat'</code> とする
 
* フォームのクラスを <code>'postform'</code> とする
 
* フォームのクラスを <code>'postform'</code> とする
 +
* 階層の深さ制限なし
  
 
  <?php wp_dropdown_categories(); ?>
 
  <?php wp_dropdown_categories(); ?>
145行目: 146行目:
 
: (''文字列'') ドロップダウンフォームのクラス。デフォルトは <code>'postform'</code>。
 
: (''文字列'') ドロップダウンフォームのクラス。デフォルトは <code>'postform'</code>。
 
<!-- 前項と合わせて <code><nowiki><form name="cat" class="postform"></nowiki></code> のようになるのかも? -->
 
<!-- 前項と合わせて <code><nowiki><form name="cat" class="postform"></nowiki></code> のようになるのかも? -->
 +
; depth
 +
: (''整数'') カテゴリ階層のどのレベルまでをカテゴリリストに出力するかを指定。初期値は ''0''(全親子カテゴリを出力)。このパラメータは '''[[Version 2.5|2.5]] 以上'''でのみ使えます。
 +
:* <code>0</code>  - 全ての親子カテゴリを出力 (初期値)
 +
:* <code>-1</code> - 全てのカテゴリをフラット(インデントなし)形式で出力('''hierarchical''' パラメータより優先)
 +
:* <code>1</code>  - 最上位カテゴリのみ出力
 +
:* <code>n</code>  - n(数値)階層目までを出力。'2' と指定すれば、最上位とすぐ下の子カテゴリまでを出力。
  
 
== 変更履歴 ==
 
== 変更履歴 ==
  
 +
* [[Version 2.5|2.5]] : パラメータに depth を追加
 
* [[Version 2.1|2.1]] : 新規テンプレートタグ
 
* [[Version 2.1|2.1]] : 新規テンプレートタグ
  
162行目: 170行目:
 
{{DEFAULTSORT:wp_dropdown_categories}}
 
{{DEFAULTSORT:wp_dropdown_categories}}
 
[[Category:wp2.1]]
 
[[Category:wp2.1]]
 +
[[Category:wp2.5]]
  
 
[[en:Template Tags/wp_dropdown_categories]]
 
[[en:Template Tags/wp_dropdown_categories]]

2008年3月18日 (火) 21:20時点における版

この記事は翻訳時に編集が必要であるとマークされていました。その為Codex原文が大きく編集されている可能性があります。内容を確認される際は原文を参照していただき、可能であれば本項目へ反映させてください。よりよいCodexを作成するためのお手伝いをお願いします。

送信ボタンのないセレクトボックス(ドロップダウンメニューなど)を使ったカテゴリリストを表示します。

このテンプレートタグは Wordpress 2.1 以上でのみ使えます。

使い方

<?php wp_dropdown_categories('引数'); ?>

用例

デフォルトでの使い方

$defaults = 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' とする
  • 階層の深さ制限なし
<?php wp_dropdown_categories(); ?>

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>

Example depicts using the show_option_none parameter and was gleaned from Moshu's forum post.

<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>

In this example the echo parameter (echo=0) is used. A simple preg_replace inserts the JavaScript code. It even works without JavaScript (submit button is wrapped by noscript tags).

<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
文字列) Causes the HTML for the dropdown to allow you to select All of the categories.
show_option_none
文字列) Causes the HTML for the dropdown to allow you to select NONE of the categories.
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 を表示しない/値として返さない。初期値は除外カテゴリなし。
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' と指定すれば、最上位とすぐ下の子カテゴリまでを出力。

変更履歴

  • 2.5 : パラメータに depth を追加
  • 2.1 : 新規テンプレートタグ


カテゴリータグ: the_category(), the_category_rss(), single_cat_title(), category_description(), wp_dropdown_categories(), wp_list_categories(), get_the_category(), get_the_category_by_ID(), get_category_by_slug(), get_the_category_list(), get_category_parents(), get_category_link(), is_category(), in_category()


テンプレートタグへの PHP 関数型パラメータの渡し方関数リファレンステンプレートタグ目次もご覧ください。

最新英語版: WordPress Codex » wp_dropdown_categories

このページ「テンプレートタグ/wp dropdown categories」は一部未翻訳です。和訳や日本語情報を加筆してくださる協力者を求めています