$page->parents() method

Return this page’s parent pages, or the parent pages matching the given selector.

This method returns all parents of this page, in order. If a selector is specified, they will be filtered by the selector. By default, parents are returned in breadcrumb order. In 3.0.158+ if you specify boolean true for selector argument, then it will return parents in reverse order (closest to furthest).


// Render breadcrumbs 
foreach($page->parents() as $parent) {
  echo "<li><a href='$parent->url'>$parent->title</a></li>";
// Return all parents, excluding the homepage
$parents = $page->parents("template!=home"); 
// Return parents in reverse order (closest to furthest, 3.0.158+)
$parents = $page->parents(true); 


// basic usage
$items = $page->parents();

// usage with all arguments
$items = $page->parents($selector = '');


selector (optional)string, array, bool

Optional selector string to filter parents by or boolean true for reverse order

Return value


All parent pages, or those matching the given selector.

$page methods and properties

API reference based on ProcessWire core version 3.0.236

Latest news

  • ProcessWire Weekly #518
    The 518th issue of ProcessWire Weekly brings in all the latest news from the ProcessWire community. Modules, sites, and more. Read on!
    Weekly.pw / 13 April 2024
  • ProFields Table Field with Actions support
    This week we have some updates for the ProFields table field (FieldtypeTable). These updates are primarily focused on adding new tools for the editor to facilitate input and management of content in a table field.
    Blog / 12 April 2024
  • Subscribe to weekly ProcessWire news

“Indeed, if ProcessWire can be considered as a CMS in its own right, it also offers all the advantages of a CMF (Content Management Framework). Unlike other solutions, the programmer is not forced to follow the proposed model and can integrate his/her ways of doing things.” —Guy Verville, Spiria Digital Inc.