- 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細)
「テンプレートタグ/wp dropdown categories」の版間の差分
(和訳・編集/show_option_all, show_option_none が未訳。) |
細 (JavaScript 利用の送信ボタンなしメニューの例を追加(en:Template Tags/wp_dropdown_categories 2008年1月22日 (火) 08:28 Fastagent 版)/ページ様式微調整) |
||
1行目: | 1行目: | ||
{{Copyedit}} | {{Copyedit}} | ||
− | + | <div id="Description"> | |
− | + | ||
== 説明 == | == 説明 == | ||
− | + | </div> | |
送信ボタンのないセレクトボックス(ドロップダウンメニューなど)を使ったカテゴリリストを表示します。 | 送信ボタンのないセレクトボックス(ドロップダウンメニューなど)を使ったカテゴリリストを表示します。 | ||
+ | このテンプレートタグは Wordpress '''[[Version 2.1|2.1]] 以上'''でのみ使えます。 | ||
+ | |||
+ | <div id="Usage"> | ||
== 使い方 == | == 使い方 == | ||
− | + | </div> | |
+ | |||
<?php wp_dropdown_categories('引数'); ?> | <?php wp_dropdown_categories('引数'); ?> | ||
+ | <div id="Examples"> | ||
== 用例 == | == 用例 == | ||
− | + | </div> | |
− | === | + | |
− | + | <div id="Default_Usage"> | |
+ | ===デフォルトでの使い方=== | ||
+ | </div> | ||
<pre> | <pre> | ||
$defaults = array('show_option_all' => '', 'show_option_none' => '', 'orderby' => 'ID', | $defaults = array('show_option_all' => '', 'show_option_none' => '', 'orderby' => 'ID', | ||
36行目: | 42行目: | ||
<?php wp_dropdown_categories(); ?> | <?php wp_dropdown_categories(); ?> | ||
+ | <div id="Dropdown_with_Submit_Button"> | ||
=== 送信ボタン付きドロップダウンメニュー === | === 送信ボタン付きドロップダウンメニュー === | ||
− | + | </div> | |
WordPress サイドバーの箇条書きリスト内に、HTMLフォームの送信ボタン付き階層型カテゴリ・ドロップダウンリストを表示、各カテゴリの投稿数も表示。 | WordPress サイドバーの箇条書きリスト内に、HTMLフォームの送信ボタン付き階層型カテゴリ・ドロップダウンリストを表示、各カテゴリの投稿数も表示。 | ||
51行目: | 58行目: | ||
</pre> | </pre> | ||
+ | <div id="Dropdown_without_a_Submit_Button_using_JavaScript"> | ||
+ | === JavaScript を用いた送信ボタンなしドロップダウンメニュー === | ||
+ | </div> | ||
+ | Example depicts using the show_option_none parameter and was gleaned from [http://wordpress.org/support/topic/145489?replies=13#post-657759 Moshu's forum post]. | ||
+ | <pre> | ||
+ | <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> | ||
+ | </pre> | ||
+ | |||
+ | <div id="Dropdown_without_a_Submit_Button_using_JavaScript_.282.29"> | ||
+ | ===JavaScript を用いた送信ボタンなしドロップダウンメニュー (2) === | ||
+ | </div> | ||
+ | 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). | ||
+ | <pre> | ||
+ | <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> | ||
+ | </pre> | ||
+ | |||
+ | <div id="Parameters"> | ||
== パラメータ == | == パラメータ == | ||
− | + | </div> | |
; show_option_all | ; show_option_all | ||
98行目: | 146行目: | ||
<!-- 前項と合わせて <code><nowiki><form name="cat" class="postform"></nowiki></code> のようになるのかも? --> | <!-- 前項と合わせて <code><nowiki><form name="cat" class="postform"></nowiki></code> のようになるのかも? --> | ||
+ | == 変更履歴 == | ||
+ | |||
+ | * [[Version 2.1|2.1]] : 新規テンプレートタグ | ||
+ | |||
+ | <div id="Related"> | ||
== 関連 == | == 関連 == | ||
− | + | </div> | |
− | |||
{{Tag Category Tags}} | {{Tag Category Tags}} | ||
− | |||
{{PHP Function Tag Footer}} | {{PHP Function Tag Footer}} | ||
+ | {{原文|wp_dropdown_categories}} | ||
+ | |||
+ | {{NeedTrans|一部}} | ||
+ | |||
+ | {{DEFAULTSORT:wp_dropdown_categories}} | ||
+ | [[Category:wp2.1]] | ||
+ | |||
+ | [[en:Template Tags/wp_dropdown_categories]] |
2008年3月18日 (火) 21:12時点における版
目次
説明
送信ボタンのないセレクトボックス(ドロップダウンメニューなど)を使ったカテゴリリストを表示します。
このテンプレートタグは 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');
デフォルトでは次のように表示:
- カテゴリ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>
JavaScript を用いた送信ボタンなしドロップダウンメニュー
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>
JavaScript を用いた送信ボタンなしドロップダウンメニュー (2)
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'
。
変更履歴
- 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()
最新英語版: WordPress Codex » wp_dropdown_categories
このページ「テンプレートタグ/wp dropdown categories」は一部未翻訳です。和訳や日本語情報を加筆してくださる協力者を求めています。