说明
该标签在一个没有提交按钮的选择框(如下拉式选框)中展示页面列表。
用法
<?php wp_dropdown_pages( $args ); ?>
默认用法
<?php $args = array(
'depth' => 0,
'child_of' => 0,
'selected' => 0,
'echo' => 1,
'name' => 'page_id',
'show_option_none' =>
'exclude' =>
'exclude_tree' => ); ?>
默认情况下的显示状态:
- 以层次(缩进)方式显示页面和子页面
- 显示所有页面(不限制子页面的显示)
- 显示窗口中不选中/显示任何页面
- 下拉式选框的名称为'page_id'
- 允许用户不选择任何页面(show_option_none)
参数
depth(整数)
该参数决定wp_list_pages所生成的页面列表中所允许的页面层级的层数。默认值为0(显示包括子页面在内的所有页面)。
- 0 —— 以层次(缩进)方式显示所有页面和他们的子页面(默认)
- -1 —— 以平面(不缩进)方式显示所有页面和子页面
- 1 —— 只显示顶级页面
- 2 —— 值为2(或者更大值)时,表示可以缩进显示的层数。
child_of(整数)
只显示某一个页面的子页面;用该页面的ID作为参数值。默认值为0(显示所有页面)。
selected
(整数)在显示窗口中选中/显示的页面的ID。默认为不选中任何页面。
echo(布尔型)
显示生成的链接列表或以HTML文本字符串形式返回列表以便用在PHP中。默认值为1(显示生成的列表项)。有效值包括:
- 1 (true)——默认值
- 0(false)
name
(字符串)下拉式选框被赋予的名称。默认为'page_id'。
show_option_none
(字符串)引起下拉式选项框的HTML,从而允许你不选定任何页面。
exclude
(字符串)将要排除的类别ID列表,各ID用逗号隔开。例如, 'exclude=4,12' 表示不显示或返回ID为4和12的分类。默认值为不排除任何类别。
exclude_tree(字符串)
定义需要排除的父页面ID列表,各ID用逗号隔开。用该参数排除某个父页面及其所有子页面。因此 'exclude_tree=5' 可排除ID为5的父页面及其所有子页面。参数新增于WP 2.7。
其它参数
get_pages的一些参数可能可以用于wp_dropdown_pages,不过这种说法未经证实。下面是get_pages各参数的默认设置:
<?php $args = array(
'child_of' => 0,
'sort_order' => 'ASC',
'sort_column' => 'post_title',
'hierarchical' => 1,
'exclude' => ,
'include' => ,
'meta_key' => ,
'meta_value' => ,
'authors' =>
'exclude_tree' => ); ?>
示例
带有提交按钮的下拉式选项框
以HTML格式显示带有层级的页面下拉式列表,有提交按钮。
<li id="pages"> <h2><?php _e('pages:'); ?></h2> <form action="<?php bloginfo('url'); ?>" method="get"> <?php wp_dropdown_pages(); ?> <input type="submit" name="submit" value="view" /> </form> </li>
历史记录
- 始见于WordPress 2.1.0版本
源文件
wp_dropdown_pages()位于 wp-includes/post-template.php
分类:中文手册