Rebuild the product search index using custom development

  • Updated

In most circumstances, making modifications to Product records requires the Product Search Index to be rebuilt. Changes to products (or child objects) will show up on the website correctly without a reindex because they get loaded even after a search. However, new changes will not be searchable until indexed. In the case of adding a product to a category or removing a product from a category, or adding/removing an attribute - those type of relational changes would not show up until the reindex. Ultimately, it depends on whether the changes are made to things that are searchable, and whether it is important for new search terms to work immediately. Use the following steps to rebuild the index:

  1. Go to Admin Console > Marketing > Search > Indexing.
  2. Depending on the situation, click Quick Rebuild (Partial) or Full Rebuild . Selecting Quick Rebuild only updates Products that have changed, whereas the Full Rebuild reindexes all records, which can take a considerable amount of time.

Aside from the standard reindexing process of selecting the rebuild buttons, there are other ways to rebuild the product search index, based on use case.

  • Update the product search index manually using .NET code in a controller or service by using the ServiceLocator. For example:

  • Update the product search index using an Integration Job after a product refresh. For example:

To start the Rebuild Product Search Index automatically, set up an integration refresh type job with the Postprocessor set to RebuildProductSearchIndex. The Preprocessor and Integration Processor are both set to None. It is also recommended to set the Link To Job to your ProductRefresh job.