$page->hasChildren() method

Return the number of visible children, optionally with conditions

This method is similar to $page->numChildren() except that the default behavior is to exclude non-visible children.

This method may be more convenient for front-end navigation use than the $page->numChildren() method because it only includes the count of visible children. By visible, we mean children that are not hidden, unpublished, or non-accessible due to access control.


// Determine if we should show navigation to children
if($page->hasChildren()) {
  // Yes, we should show navigation to children


// basic usage
$int = $page->hasChildren();

// usage with all arguments
$int = $page->hasChildren($selector = true);


selector (optional)

Return value


Number of children

$page methods and properties

API reference based on ProcessWire core version 3.0.137

Twitter updates

  • ProcessWire 3.0.146 on the dev branch contains about 22 commits with a combination of useful upgrades and issue report resolutions, more details in this forum post: More
    22 November 2019
  • ProcessWire 3.0.144 and 3.0.145 add improved field template context override settings and include a new Inputfields API, along with numerous other issue fixes, optimizations and improvements to the core. More
    8 November 2019
  • ProcessWire 3.0.144 core updates: Upgraded overrides section in the field editor, a new Inputfields JS API, and more— More
    1 November 2019

Latest news

  • ProcessWire Weekly #290
    In the 290th issue of ProcessWire Weekly we're going to introduce the latest addition to the ProDevTools module package and a third party image picker field from gebeer, check out a new site of the week, and more. Read on!
    Weekly.pw / 30 November 2019
  • New User Activity module
    Blog / 29 November 2019
  • Subscribe to weekly ProcessWire news

I just love the easy and intuitive ProcessWire API. ProcessWire rocks!” —Jens Martsch, Web developer