Reference

Guide

$pages->filter()

Filters elements by one of the predefined filter methods, by a custom filter function or an array of filters

$pages->filter(string|array|\Closure $field, mixed $args = null): Kirby\Toolkit\Collection

Parameters

Name Type Default Description
$field string|array|Closure
$args mixed null

Return type

Kirby\Toolkit\Collection

Example

// fetch children with a title starting with 'Project'
$items = $page->children()->filter(function ($child) {
  return str::startsWith($child->title(), 'Project');
});

// fetch children with more than 2 images
$items = $page->children()->filter(function ($child) {
  return $child->images()->count() > 2;
});

// fetch visible children which have visible children
$items = $page->children()->listed()->filter(function ($child) {
  return $child->hasListedChildren();
});

More information

Filtering compendium

Inherited from

Kirby\Toolkit\Collection

Source code

kirby/src/Toolkit/Collection.php#L248