Indexing
...
Entities
CMS Pages
Excluding CMS Pages
1min
you may wish to exclude certain cms pages from the sync to do this we inject an isindexablecondition into the isindexableconditions array for the virtual type klevu\indexingcms\service\determiner\isindexabledeterminer xml \<virtualtype name="klevu\indexingcms\service\determiner\isindexabledeterminer"> \<arguments> \<argument name="isindexableconditions" xsi\ type="array"> \<item name="pageisindexablecondition" xsi\ type="object">vendor\module\service\determiner\excludedpagesisindexablecondition\</item> \</argument> \</arguments> \</virtualtype> create that class, which must implement the isindexableconditioninterface vendor\module\service\determiner\excludedpagesisindexablecondition php \<?php namespace vendor\module\service\determiner; use klevu\indexingapi\service\determiner\isindexableconditioninterface; use magento\cms\api\data\pageinterface; class excludedpagesisindexableconditionr implements isindexableconditioninterface { / edit routes as required alternatively inject these via di xml @param string\[] / private array $excludedpages = \[ 'no route', 'service unavailable', ]; public function execute( extensibledatainterface|pageinterface $entity, storeinterface $store, ) bool { if (!($entity instanceof pageinterface)) { throw new \invalidargumentexception( sprintf( 'invalid argument provided for "$entity" expected %s, received %s ', pageinterface class, get debug type($entity), ), ); } return !in array( needle $page >getidentifier(), haystack $this >excludedpages, strict true, ); } } see entities is indexable determiner https //docs klevu com/klevu magento v4/entities is indexable determiner for more information