$pages->findIDs() method

Like find() except returns array of IDs rather than Page objects

  • This is a faster method to use when you only need to know the matching page IDs.
  • The default behavior is to simply return a regular PHP array of matching page IDs in order.
  • The alternate behavior (verbose) returns more information for each match, as outlined below.

Verbose option:
When specifying boolean true for the $options argument (or using the verbose option), the return value is an array of associative arrays, with each of those associative arrays containing id, parent_id and templates_id keys for each page.

Available since version 3.0.46.

Example

// returns array of page IDs (integers) like [ 1234, 1235, 1236 ]
$a = $pages->findIDs("foo=bar");

// verbose option: returns array of associative arrays, each with id, parent_id and templates_id
$a = $pages->findIDs("foo=bar", true);

Usage

// basic usage
$array = $pages->findIDs($selector);

// usage with all arguments
$array = $pages->findIDs($selector, $options = []);

Arguments

NameType(s)Description
selectorstring, array, Selectors

Selector to find page IDs.

options (optional)array, bool, int, string

Options to modify behavior.

  • verbose (bool|int|string): Specify true to make return value array of associative arrays, each with id, parent_id, templates_id. Specify integer 2 or string * to return verbose array of associative arrays, each with all columns from pages table.
  • indexed (bool): Index by page ID? (default=false) Added 3.0.172
  • The verbose option above can also be specified as alternative to the $options argument.
  • See Pages::find() $options argument for additional options.

Return value

array

Array of page IDs, or in verbose mode: array of arrays, each with id, parent_id and templates_id keys.


$pages methods and properties

API reference based on ProcessWire core version 3.0.172

Twitter updates

  • ProcessWire 3.0.174 core updates: improvements to the new path/URL hooks and more— More
    12 March 2021
  • ProcessWire 3.0.173 adds several new requested features and this post focuses on one of my favorites: the ability to hook into and handle ProcessWire URLs, independent of pages— More
    5 March 2021
  • This week ProcessWire gained powerful new tools for finding pages and controlling how they are loaded. If you like to maximize performance and efficiency, you’ll like what 3.0.172 brings— More
    5 February 2021

Latest news

  • ProcessWire Weekly #356
    In the 356th issue of ProcessWire Weekly we'll cover the latest core updates (ProcessWire 3.0.173), introduce new third party modules RockCalculator and RockIframe, and take a closer look at a brand new site of the week. Read on!
    Weekly.pw / 6 March 2021
  • ProcessWire 3.0.173 core updates: New URL hooks
    ProcessWire 3.0.173 adds several new requested features and this post focuses on one of my favorites: the ability to hook into and handle ProcessWire URLs, independent of pages.
    Blog / 5 March 2021
  • Subscribe to weekly ProcessWire news

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