Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

There are different levels of indexing/search language configuration. They are listed below by decreasing priority. The former are therefore given priority.

  1. If a property has a label been tagged with elasticsearch/analyzer/[analyzer name] (e. g. elasticsearch/analyzer/simple), this parser is forced to be used regardless of language. Consult the documentation of your version of Elasticsearch to know the available analyzers.

  2. If a property has a label been tagged with elasticsearch/default_lang/[lang/[language code] (e. g. elasticsearch/default_lang/en) this language is taken.

  3. If the property is an internationalization: the language is extracted from its suffix. (e. g. titreen is an internationalisation of the title analysed in English).

  4. If the object has an elasticsearch/default_lang/[lang/[language code] tag, this language is taken.

  5. Finally, we take the default indexing language configured in the administration.

Note

Any modification of this language information automatically leads to a re-indexation of the contents.

SKU, product references, identifier indexation

When the property contains numbers, separators like “_”, “/”… the ElasticSearch standard analyzer will remove these numbers in it search index.

To index these type of properties, tag it with the elasticsearch/analyzer/words_and_numbers tag.

...

If you want to search a part of a SKU, for example that you query matches ABC-123 and ABC-124, don’t forget to use the tokens in your query : ABC*. If you query “ABC”, il will only match the exact string.

Using a exact keyword Analyzer from ElasticSearch

If you need to index the EXACT string in the property, you can use an existing Analyzer from ElasticSearch such as “keyword” : https://www.elastic.co/guide/en/elasticsearch/reference/6.8/analysis-keyword-analyzer.html

To index these type of properties, tag it with the elasticsearch/analyzer/keyword tag.