Just create PHP file under your module’s Cron folder,
A created module like Rbj_Indexing for reference, Create Indexer.php file and call execute() function,
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | <?php namespace Rbj\Indexing\Cron; class Indexer { public function __construct( \Magento\Indexer\Model\Processor $processor ) { $this->processor = $processor; } public function execute() { /* Regenerate indexes for all indexers */ $this->processor->reindexAll(); /* Regenerate indexes for all invalid indexers */ $this->processor->reindexAllInvalid() } } |
There are two types of method for indexing.
1. Regenerate indexes for all indexers
$this->processor->reindexAll();
2. Regenerate indexes for all invalid indexers. This will only regenerate for invalid indexer.
$this->processor->reindexAllInvalid()