Skip to content

Kirby 4.5.0

$pages->search()

Searches the collection

$pages->search(?string $query = null, array|string $params = [ ]): Kirby\Cms\Pages

Parameters

Name Type Default
$query string|null null
$params array|string [ ]

Return type

Kirby\Cms\Pages

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\Cms\Collection

Parameter options

Option Default Description
minlength 2 Minimum length of search word
fields [] Fields to search in, defaults to all fields
words false Search full words only
score ['id' => 64,'title' => 64] Score per field
stopwords [] Array of words to exclude from search

Examples

// search all pages and descendants
$results = $pages->search('my awesome search');

// filter the search results
$results = $pages->search('my awesome search')->listed()->filterBy('template', 'article');

// add pagination to the search results
$results = $pages->search('my awesome search')->paginate(20);

// search in certain fields only
$results = $pages->search('my awesome search', 'title|text');

// search for full words only
$results = $pages->search('my awesome->search', ['words' => true, 'minlength' => 4]);

// feed the search with a get parameter -> http://yourdomain.com/?q=awesome
$results = $pages->search(get('q'));