$pages->has() method

Is there any page that matches the given $selector in the system? (with no exclusions)

  • This can be used as an “exists” type of method.
  • Returns ID of first matching page if any exist, or 0 if none exist (returns array if $verbose is true).
  • Like with the get() method, no pages are excluded, so an include=all is not necessary in selector.
  • If you need to quickly check if something exists, this method is preferable to using a count() or get().

When $verbose option is used, an array is returned instead. Verbose return array includes page id, parent_id and templates_id indexes.

Available since version 3.0.153.

Usage

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

// usage with all arguments
$array = $pages->has($selector, bool $verbose = false);

Arguments

NameType(s)Description
selectorstring, int, array, Selectors
verbose (optional)bool

Return verbose array with page id, parent_id, templates_id rather than just page id? (default=false)

Return value

array int

See Also


$pages 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

“Indeed, if ProcessWire can be considered as a CMS in its own right, it also offers all the advantages of a CMF (Content Management Framework). Unlike other solutions, the programmer is not forced to follow the proposed model and can integrate his/her ways of doing things.” —Guy Verville, Spiria Digital Inc.