Retrieve or save pages ($pages API variable as a function)

Accessing pages() is exactly the same as accessing $pages. Though there are a couple of optional shortcuts available by providing an argument to this function.

Example

// A call with no arguments returns the $pages API variable
$pages = pages();
$pageArray = pages()->find("selector");
$page = pages()->get(123);

// Providing selector as argument maps to $pages->find()
$pageArray = pages("template=basic-page");

// Providing argument of single page ID, path or name maps to $pages->get()
$page = pages(123);
$page = pages("/path/to/page/");
$page = pages("page-name"); 

Usage

// basic usage
$pages = pages();

// usage with all arguments
$pages = pages($selector = '');

Arguments

NameType(s)Description
selector (optional)string, array, int

Specify one of the following:

  • Nothing, makes it return the $pages API variable.
  • Selector (string) to find matching pages, makes function return PageArray - equivalent to $pages->find("selector");
  • Page ID (int) to return a single matching Page - equivalent to $pages->get(123);
  • Page name (string) to return a single page having the given name - equivalent to $pages->get("name");

Return value


Functions methods and properties

API reference based on ProcessWire core version 3.0.234

Latest news

  • ProcessWire Weekly #510
    In the 510th issue of ProcessWire Weekly we'll check out ProcessWire 3.0.236, introduce a new third party module PageFinder Depth from Robin Sallis, and more. Read on!
    Weekly.pw / 17 February 2024
  • Using date range fields in ProcessWire
    This week we'll take a detailed look at the newest addition to the ProFields set of modules: the Date Range Fieldtype and Inputfield.
    Blog / 24 November 2023
  • Subscribe to weekly ProcessWire news

“…building with ProcessWire was a breeze, I really love all the flexibility the system provides. I can’t imagine using any other CMS in the future.” —Thomas Aull