Menu Adam R Brown

WP hooks navigation: Home/browseActions indexFilters index

Source View: get_pages

To save our bandwidth, we show only a snippet of code around each occurence of the hook. View complete file in SVN (without highlighting).

Understanding Source Code

The best way to understand what a hook does is to look at where it occurs in the source code.

Remember, this hook may occur in more than one file. Moreover, the hook's context may change from version to version.

Source View

This hook occurs 3 times in this file.

Line Code
4571      // $args can be whatever, only use the args defined in defaults to compute the key.
4572      $key = md5( serialize( wp_array_slice_assoc( $r, array_keys( $defaults ) ) ) );
4573      $last_changed = wp_cache_get_last_changed( 'posts' );
4574
4575      $cache_key = "get_pages:$key:$last_changed";
4576      if ( $cache = wp_cache_get( $cache_key, 'posts' ) ) {
4577           // Convert to WP_Post instances.
4578           $pages = array_map( 'get_post', $cache );
4579           /** This filter is documented in wp-includes/post.php */
4580           $pages = apply_filters( 'get_pages', $pages, $r );
4581           return $pages;
4582      }
4583
4584      $inclusions = '';
4585      if ( ! empty( $r['include'] ) ) {
4586           $child_of = 0; //ignore child_of, parent, exclude, meta_key, and meta_value params if using include
4587           $parent = -1;
4588           $exclude = '';
4589           $meta_key = '';
 
Line Code
4713
4714      if ( ! empty( $number ) ) {
4715           $query .= ' LIMIT ' . $offset . ',' . $number;
4716      }
4717
4718      $pages = $wpdb->get_results($query);
4719
4720      if ( empty($pages) ) {
4721           /** This filter is documented in wp-includes/post.php */
4722           $pages = apply_filters( 'get_pages', array(), $r );
4723           return $pages;
4724      }
4725
4726      // Sanitize before caching so it'll only get done once.
4727      $num_pages = count($pages);
4728      for ($i = 0; $i < $num_pages; $i++) {
4729           $pages[$i] = sanitize_post($pages[$i], 'raw');
4730      }
4731
 
Line Code
4765
4766      /**
4767       * Filters the retrieved list of pages.
4768       *
4769       * @since 2.1.0
4770       *
4771       * @param array $pages List of pages to retrieve.
4772       * @param array $r     Array of get_pages() arguments.
4773       */
4774      return apply_filters( 'get_pages', $pages, $r );
4775 }
4776
4777 //
4778 // Attachment functions
4779 //
4780
4781 /**
4782  * Check if the attachment URI is local one and is really an attachment.
4783  *