$pages->getByIDs() method

Given array or CSV string of Page IDs, return a PageArray

Available since version 3.0.156. Previous versions can use $pages->getById() for similar behavior

Usage

// basic usage
$items = $pages->getByIDs($ids);

// usage with all arguments
$items = $pages->getByIDs($ids, array $options = []);

Arguments

NameType(s)Description
idsarray, string, WireArray

Any one of the following:

  • Single page ID (string or int)
  • Array of page IDs
  • Comma or pipe-separated string of page IDs
  • Array of associative arrays having id and templates_id: [ [ 'id' => 1, 'templates_id' => 2], [ 'id' => 3, 'templates_id' => 4 ] ]
options (optional)array

Options to affect behavior. The 'template' option is recommended when you have this info available.

  • template (Template|int|string): Template object, name or ID to use for loaded pages. (default=null)
  • parent (Page|int|string): Parent Page object, ID, or path to use for loaded pages. (default=null)
  • cache (bool): Place loaded pages in memory cache? (default=true)
  • getFromCache (bool): Allow use of previously cached pages in memory (rather than re-loading it from DB)? (default=true)
  • getNumChildren (bool): Specify false to disable retrieval and population of 'numChildren' Page property. (default=true)
  • getOne (bool): Specify true to return just one Page object, rather than a PageArray. (default=false)
  • autojoin (bool): Allow use of autojoin option? (default=true)
  • joinFields (array): Autojoin the field names specified in this array, regardless of field settings (requires autojoin=true). (default=empty)
  • joinSortfield (bool): Whether the 'sortfield' property will be joined to the page. (default=true)
  • findTemplates (bool): Determine which templates will be used (when no template specified) for more specific autojoins. (default=true)
  • pageClass (string): Class to instantiate Page objects with. Leave blank to determine from template. (default=auto-detect)
  • pageArrayClass (string): PageArray-derived class to store pages in (when 'getOne' is false). (default=PageArray)
  • pageArray (PageArray|null): Populate this existing PageArray rather than creating a new one. (default=null)
  • page (Page|null): Existing Page object to populate (also requires the getOne option to be true). (default=null)

Return value

PageArray Page

Returns PageArray unless the getOne option was specified in which case a Page is returned.


$pages methods and properties

API reference based on ProcessWire core version 3.0.200

Twitter updates

  • Weekly update: Smooth rollout for ProcessWire 3.0.200 main/master, plus getting started on a new WP-to-PW site conversion and why they can be so rewarding— More
    20 May 2022
  • New main/master version of ProcessWire that has more than 220 commits, resolves more than 80 issues, adds numerous new features, performance improvements and optimizations, and consumes HALF the disk space of our previous release— More
    13 May 2022
  • Summary of weekly core updates for 22 April 2022 More
    22 April 2022

Latest news

  • ProcessWire Weekly #419
    In issue 419 of ProcessWire Weekly we'll check out this week's core updates, introduce a brand new recipe of the week, and more. Read on!
    Weekly.pw / 21 May 2022
  • ProcessWire 3.0.200 new master/main version
    This new main/master version has more than 220 commits, resolves more than 80 issues, adds numerous new features, performance improvements and optimizations, and consumes HALF the disk space of our previous release. This post covers all the details.
    Blog / 13 May 2022
  • Subscribe to weekly ProcessWire news

“I am currently managing a ProcessWire site with 2 million+ pages. It’s admirably fast, and much, much faster than any other CMS we tested.” —Nickie, Web developer