You must add your account credentials when setting up the extension for the first time. The extension will then automatically add all the indices your account requires. You can check which indices have been created from Algolia’s dashboard.
Sorting
By default, the extension creates three replicas for each product index. These replicas are directly related to the sorting configuration in the InstantSearch section.
Modifying sorting directly affects the number of records created.
Indices
Algolia’s dashboard provides insight into how the Magento extension uses indices.
Indices created by the extension depend on how Magento configures indices for products, categories, and additional sections. The index name is influenced by the index name prefix defined in the Magento configuration.
If you use the extension in production, you probably want to use it in an acceptance/staging or development environment. Defining meaningful prefixes to identify instantly “which index belongs to which environment” is good practice, resulting in indices like prod_magento, staging_magento, and dev_magento. The first step to successful indexing is to perfect your Magento configuration. This way, it’s easier to anticipate the number of indices created. If the number of indices is incorrect, something may be wrong with your Magento configuration.
Incorrect configuration
The following are examples of Magento configurations that can lead to an unexpected number of indices.
Different configuration on store view or website level
Magento allows users to define a default configuration and a configuration for a specific store view or website. You can configure some extension settings this way too.
For example, you can sort differently on two websites in the same Magento installation, creating a different number of indices for these two websites. Since Magento only displays the default configuration when landing on the settings page, this manual configuration is easy to overlook, especially with more than one administrator.
If an unexpected number of indices is created, ensure no unwanted configuration has been set by switching from the default settings to a store view or a website-specific configuration.
All stores configuration
The extension adheres to Magento’s list of websites, stores, and views. Find these by going to Stores > Settings > All Stores.
If you have a multilingual webshop that uses the extension, every language needs its own indices, and the total number of indices can significantly increase because of this.
Customer group configuration
By default, Magento creates a set of four customer groups: General, Not logged in, Retailer, and Wholesale. Third-party extensions can create their own customer groups in the Magento installation, sometimes even hundreds of them.
The extension allows you to manage customer groups in the advanced section of the configuration.
Be careful when enabling this feature: If you have set up a Sort-by option with the price attribute on the InstantSearch results page, this option will create a replica index for each customer group, thereby multiplying the amount of records in Algolia. If a third-party extension creates hundreds of customer groups, Algolia’s extension will create hundreds more indices per store view.
Out of sync data
If it seems like data isn’t being pushed to Algolia’s servers:
- An error may have occurred during the indexing process: investigate the logs
- If the indexing queue is turned on, there could be a queue processing problem
- The product or category being indexed has a particular status preventing it from being indexed.
Read about the requirements for a product or category to be indexed in the indexing guide.
Debugging missing products or categories
If your data isn’t showing up but meets the requirements listed on the indexing page:
- Go to the Magento back-office and find the product or category missing.
- Save the item without changing anything. This should trigger the Magento
save
event and send any data that requires updating to Algolia’s servers. This also works if the indexing queue is turned off. - Go to Algolia’s dashboard.
-
Check if the extension has updated the product or category. Find the index, look up the product/category and check the
algoliaLastUpdateAtCET
attribute. This attribute contains the date and time the records were updated (Central European Time). -
If products are still out of sync, check the logs on Algolia’s dashboard: go to API Monitoring > Search API Logs. Reindexing triggers a POST request that should appear at the top of the list. The URL should be something like
/1/indexes/[INDEX_NAME]/batch
. By clicking the link, the request details will show up. The extension successfully sent the record to Algolia’s servers if you can see the attributes in the Request body tab (under the AddObject action). - If the attributes aren’t updated, and the
algoliaLastUpdateAtCET
attribute in the index’s object isn’t updated, use the SKU reindexing form. This form gives you feedback on why the product hasn’t updated.
Third-party extensions
The extension uses Magento’s plug-in system to apply Algolia’s logic to the following Magento classes:
Magento\Catalog\Model\ResourceModel\Product
Magento\Catalog\Model\Product\Action
Magento\CatalogInventory\Model\ResourceModel\Stock\Item
Magento\Catalog\Model\ResourceModel\Category
Magento\Catalog\Model\Category\Action
Any third-party extension that updates resources without triggering Magento’s save
events on the preceding classes will break the real-time updating of the catalog. To fix this, you must manually trigger reindexing.
Updates aren’t sent to Algolia
If the data in Algolia’s dashboard has unexpected values, look at the attributes specific to the store view or website. The extension respects settings set at the store view and website level, which may override the default settings. To check if this is the case, change the view to show the store view or website setting by using Magento’s store switcher (top-left corner of the window).