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.236

Latest news

  • ProcessWire Weekly #554
    In the 554th issue of ProcessWire Weekly we'll check out the latest core updates, introduce a couple of new third party modules, and more. Read on!
    Weekly.pw / 21 December 2024
  • Custom Fields Module
    This week we look at a new ProFields module named Custom Fields. This module provides a way to rapidly build out ProcessWire fields that contain any number of subfields/properties within them.
    Blog / 30 August 2024
  • 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