常用函数-get_pages()

0条评论

常用函数-get_pages()

说明

get_pages( )函数用于获取博客中已定义页面的列表。下面是它的典型用法。

用法

<?php get_pages('arguments'); ?>

示例

在下拉列表中显示页面

这是一个包括所有页面的下拉列表的实例。请注意如何在传递页面编号后,通过调用get_page_link函数来获取页面链接。

<select name=\"page-dropdown\"
 onchange='document.location.href=this.options[this.selectedIndex].value;'> 
 <option value=\"\">
<?php echo attribute_escape(__('Select page')); ?></option> 
 <?php 
  $pages = get_pages(); 
  foreach ($pages as $pagg) {
      $option = '<option value=\"'.get_page_link($pagg->ID).'\">';
    $option .= $pagg->post_title;
    $option .= '</option>';
    echo $option;
  }
 ?>
</select>

以文章形式显示目前页面的子页面

<?php
    $pages = get_pages('child_of='.$post->ID.'&sort_column=post_date&sort_order=desc');
    $count = 0;
    foreach($pages as $page)
    {        
        $content = $page->post_content;
        if(!$content)
            continue;
        if($count >= 2)
            break;
        $count++;    
        $content = apply_filters('the_content', $content);
    ?>
        <h2><a href=\"<?php echo get_page_link($page->ID) ?>\"><?php echo $page->post_title ?></a></h2>
        <div class=\"entry\"><?php echo $content ?></div>
    <?php
    }    
?>

参数

sort_column (字符)

按不同方式对页面列表进行排序。默认设置成按页面标题的字母顺序排序

  • 'post_title' —— 按页面标题的字母顺序排序——默认
  • 'menu_order' —— 按页面顺序(Page Order)进行排序。注意页面顺序和页面编号的区别。页面编号是由WordPress为每篇文章或页面设定的独有的数字,而页面顺序则由用户在管理栏的Write>Pages中设置。
  • 'post_date' —— 按页面创建日期排序。
  • 'post_modified' —— 按最后修改时间进行排序。
  • 'ID' —— 按页面序列编号排序。
  • 'post_author' —— 按页面创建者的序列编号排序。
  • 'post_name' —— 按页面缩略名的字母顺序排序。

注意:sort_column参数可按WordPress数据库 wp_post table中任意字段的描述符来对页面列表进行排序。下面给出一些实用示例。

sort_order (字符)

更改页面列表的排列顺序(升序或降序)。默认为升序。可能的值为:

  • 'asc' ——按从低到高顺序排列(默认)
  • 'desc' —— 按从高到低顺序排列

exclude (字符)

定义一列页面编号并用逗号隔开,将其从已有列表中删除(例如:'exclude=3,7,1')。无默认值。

include (字符)

仅包含get_pages生成的特定页面列表。include参数与exclude同样用逗号将页面编号隔开。无默认值。

child_of (整数)

仅显示单个页面的子页面;值为默认编号。默认值为0(显示所有页面)。注意child_of参数不仅获取直系子页面,也会从已知编号中获取“孙页面”。

  • 0 ——默认,不限制子页面

parent (整数)

显示以该整数为父级的页面。默认值为-1(显示所有页面)。注意这可限制child_of参数的“深度”,因此只能检索到下一级页面。

  • -1 ——默认,不限制父页面

exclude_tree (整数)

与'child_of'相反,'exclude_tree'从结果中移除已知编号的所有子页面。也可用于隐藏已知页面的所有子页面。该参数还可联合'child_of' 的值以隐藏孙页面。在2.7版本中该参数可用。

hierarchical

(布尔型)在上级页面列表下以缩进方式显示下级页面。默认值为true(在父级列表项下显示其子页面)。可能的值有:

  • 1(true)——默认
  • 0(false)

meta_key

(字符)仅包含含有该自定义字段关键字的页面(与meta_value字段联合使用)。

meta_value

(字符)仅包含含有该自定义字段值的页面(与meta_key字段联合使用)。

authors(字符)

仅包含给定作者所写的文章。

返回值

返回一个数组,数组中包含所有与请求匹配的页面。

相关资源

Function Reference