$page->index() method

Return the index/position of this page relative to siblings.

If given a hidden or unpublished page, that page would not usually be part of the group of siblings. As a result, such pages will return what the value would be if they were visible (as of 3.0.121). This may overlap with the index of other pages, since indexes are relative to visible pages, unless you specify an include mode (see next paragraph).

If you want this method to include hidden/unpublished pages as part of the index numbers, then specify boolean true for the $selector argument (which implies "include=all") OR specify a selector of "include=hidden", "include=unpublished" or "include=all".

Available since version 3.0.24.

Example

$i = $page->index();
$n = $page->parent->numChildren();
echo "This page is $i out of $n total pages";

Usage

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

// usage with all arguments
$int = $page->index($selector = '');

Arguments

NameType(s)Description
selector (optional)

Return value

int

Returns index number (zero-based)


$page methods and properties

API reference based on ProcessWire core version 3.0.244

Latest news

  • ProcessWire Weekly #563
    In the 563rd issue of ProcessWire Weekly we will share the latest weekly update from Ryan, as well as the latest news and updates from the ProcessWire community. Read on!
    Weekly.pw / 22 February 2025
  • ProcessWire 3.0.244 new main/master version
    ProcessWire 3.0.244 is our newest main/master/stable version. It's been more than a year in the making and is packed with tons of new features, issue fixes, optimizations and more. This post covers all the details.
    Blog / 18 January 2025
  • Subscribe to weekly ProcessWire news

“We were really happy to build our new portfolio website on ProcessWire! We wanted something that gave us plenty of control on the back-end, without any bloat on the front end - just a nice, easy to access API for all our content that left us free to design and build however we liked.” —Castus, web design agency in Sheffield, UK