Skip to main content
By default, the extension places each store view’s data in a separate index: each store view has a dedicated in a specific language. For example, searching for Hemd in an English store won’t return any results. To show the correct results when searching for Hemd, customize the extension to merge those indices.

Examples of default records

  • Index name: magento2_products_en
    JSON
  • Index name: magento2_products_de
    JSON
  • Index name: magento2_products_es
    JSON
The must contain values in all supported languages to search on one store view in those languages.

Create a record in the extension

  1. Create a custom extension, which lets you listen to the extension’s custom events.
  2. Create an event listener for the algolia_after_create_product_object event, the same way as written in the custom event extension algolia_products_index_before_set_settings.
  3. From the $observer variable passed to the execute() method, fetch:
    • custom_data
    • productObject
    • subProducts
  4. The Algolia record is an array in the custom_data object and can be modified like any other PHP array.
  5. Fetch searchable attributes, such as name, description, or manufacturer, in all other languages and add it to the record in custom_data. Structure the data according to the example record.

Example of an observer’s execute() method

PHP

Index settings

If your records are structured like the example record, you don’t need to send specific settings to Algolia because you only need to make parent attributes, such as name, description, or manufacturer, searchable. You can do this in the Magento Admin.

Showcase record

JSON
Last modified on May 19, 2026