FieldtypeToggle::getMatchQuery() method

@param DatabaseQuerySelect|PageFinderDatabaseQuerySelect $query

Possible template method: If overridden, children do not need to call this method if they update the $query themselves.

Note the following additional properties are available from the $query argument:

  • $query->field (Field): Field instance that being referred to match.
  • $query->group (string): Original group of the field in the selector (when applicable).
  • $query->selector (Selector): Original Selector object (matching the $field).
  • $query->selectors (Selectors): Original Selectors object (matching $field and others).
  • $query->parentQuery (DatabaseQuerySelect): Parent database query that $query will be merged into.
  • $query->pageFinder (PageFinder): The PageFinder instance that initiated the query, for additional info.

Usage

$databaseQuerySelect = $fieldtypeToggle->getMatchQuery($query, string $table, string $subfield, string $operator, mixed $value);

Arguments

NameType(s)Description
queryDatabaseQuerySelect, PageFinderDatabaseQuerySelect
tablestring

The table name to use

subfieldstring

Name of the subfield (typically 'data', unless selector explicitly specified another)

operatorstring

The comparison operator.

  • This base Fieldtype class accepts only database operators (=, !=, >, >=, <, <=, &).
  • Other Fieldtypes may choose to accept more operators according to need of Fieldtype.
valuemixed

Value to find.

  • If given array, this base Fieldtype class (only) will match via OR condition. (3.0.182+)
  • Other Fieldtypes may choose to interpret array values differently according need of Fieldtype.

Return value

DatabaseQuerySelect PageFinderDatabaseQuerySelect

$query

Exceptions

Method can throw exceptions on error:

  • WireException


FieldtypeToggle methods and properties

API reference based on ProcessWire core version 3.0.236

Latest news

  • ProcessWire Weekly #556
    In the 556th issue of ProcessWire Weekly we're going to share the latest core development news, highlight a new third party module, and more. Read on!
    Weekly.pw / 4 January 2025
  • 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

“We were really happy to build our new portfolio website on ProcessWire! We wanted something that gave us plenty of control on the back-end, without any bloat on the front end - just a nice, easy to access API for all our content that left us free to design and build however we liked.” —Castus, web design agency in Sheffield, UK