Skip to content

Commit

Permalink
fix: add missing event listener for indexing content
Browse files Browse the repository at this point in the history
  • Loading branch information
runepiper committed Apr 24, 2024
1 parent 84b69c9 commit 800f626
Show file tree
Hide file tree
Showing 2 changed files with 40 additions and 0 deletions.
36 changes: 36 additions & 0 deletions Classes/EventListener/IndexContent.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
<?php

declare(strict_types=1);

namespace VV\T3meilisearch\EventListener;

use TYPO3\CMS\Core\Attribute\AsEventListener;
use TYPO3\CMS\Core\Utility\GeneralUtility;
use TYPO3\CMS\Frontend\Event\AfterCachedPageIsPersistedEvent;
use VV\T3meilisearch\Domain\Model\Document;
use VV\T3meilisearch\Service\IndexService;

class IndexContent
{
public function __invoke(AfterCachedPageIsPersistedEvent $event): void
{
// Only do this when caching is enabled
if ($event->isCachingEnabled() === false) {
return;
}

$tsfe = $event->getController();

if ((int) $tsfe->page['no_search'] === 1 || (int) $tsfe->page['no_index'] === 1) {
return;
}

$indexService = GeneralUtility::makeInstance(IndexService::class);

if ($tsfe->content !== '') {
$indexService->add(Document::createFromTSFE($tsfe));
}

$indexService->checkForFiles($tsfe);
}
}
4 changes: 4 additions & 0 deletions Configuration/Services.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,7 @@ services:

VV\T3meilisearch\:
resource: '../Classes/*'

VV\T3meilisearch\EventListener\IndexContent:
tags:
- name: event.listener

0 comments on commit 800f626

Please sign in to comment.