ModifyQueryForLiveSearchEvent
New in version 12.0
The PSR-14 event
\TYPO3\
can be used to modify the live search queries in the backend.
This can be used to adjust the limit for a specific table or to change the result order.
This event is fired in the
\TYPO3\
class
and allows extensions to modify the query builder
instance before execution.
Example
<?php
declare(strict_types=1);
namespace MyVendor\MyExtension\Backend\EventListener;
use TYPO3\CMS\Backend\Search\Event\ModifyQueryForLiveSearchEvent;
use TYPO3\CMS\Core\Attribute\AsEventListener;
#[AsEventListener(
identifier: 'my-extension/modify-query-for-live-search-event-listener',
)]
final readonly class MyEventListener
{
public function __invoke(ModifyQueryForLiveSearchEvent $event): void
{
// Get the current instance
$queryBuilder = $event->getQueryBuilder();
// Change limit depending on the table
if ($event->getTableName() === 'pages') {
$queryBuilder->setMaxResults(2);
}
// Reset the orderBy part
$queryBuilder->resetQueryPart('orderBy');
}
}
New in version 13.0
The PHP attribute \TYPO3\
has been
introduced to tag a PHP class as an event listener. Alternatively, or if you
need to be compatible with older TYPO3 versions, you can also register an
event listener via the Configuration/
file. Switch to
an older version of this page for an example or have a look at the section
Implementing an event listener in your extension.