模板标签-wp_dropdown_pages()

0条评论

说明

该标签在一个没有提交按钮的选择框(如下拉式选框)中展示页面列表。

用法

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