$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\Cms\Pages
Parameters
Name | Type | Default |
---|---|---|
$field * | string |array |Closure |
– |
$args | mixed |
null |
Return type
This method does not modify the existing $pages
object but returns a new object with the changes applied. Learn more →
Parent class
Kirby\Cms\Pages
inherited from 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();
});