$pages->findOne() method

Like find() but returns only the first match as a Page object (not PageArray).

This is functionally similar to the get() method except that its default behavior is to filter for access control and hidden/unpublished/etc. states, in the same way that the find() method does. You can add an include=... to your selector string to bypass. This method also accepts an $options array, whereas get() does not.

Available since version 3.0.0.

Example

// Find the newest page using the blog-post template
$blogPost = $pages->findOne("template=blog-post, sort=-created");

Usage

// basic usage
$page = $pages->findOne($selector);

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

Arguments

NameType(s)Description
selectorstring, array, Selectors

Selector string, array or Selectors object

options (optional)array, string

See $options for $pages->find()

Return value

Page NullPage

Returns a Page on success, or a NullPage (having id=0) on failure

See Also


$pages methods and properties

API reference based on ProcessWire core version 3.0.200

Twitter updates

  • Introduction to an invoice application profile being built in ProcessWire: More
    30 September 2022
  • Stumbling upon a really nice ProcessWire-powered website, plus core updates including API improvements for ProcessWire forms— More
    9 September 2022
  • Useful new dot-and-bracket syntax options added for page.get() method— More
    2 September 2022

Latest news

  • ProcessWire Weekly #438
    In the 348th issue of ProcessWire Weekly we're going to cover the latest weekly update from Ryan, take a closer look at a couple of new third party modules, and more. Read on!
    Weekly.pw / 1 October 2022
  • Multi-language field translation export/import
    In this post we cover the details of a new module that enables export and import capabilities for multi-language fields in ProcessWire.
    Blog / 5 August 2022
  • 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