Порядок результатов Elasticsearch меняется на веб-интерфейсе

Я работаю с magento 2.4.2 и elasticsearch 7.10.2

Я вижу, что даже несмотря на то, что результаты в elasticsearch правильно упорядочены в бэкэнде, во фронтенде неправильно отображаются. Вот пример, язык испанский, поэтому "lapices de colores" означает "цветные карандаши".

Если я запустил эту команду:

      curl 'localhost:9200/store_product_1_v118/_search?pretty&q=lapices+de+colores' 

Я получаю следующие результаты (для удобства я показываю только первое попадание)

       "hits" : [
  {
    "_index" : "store_product_1_v118",
    "_type" : "document",
    "_id" : "9323",
    "_score" : 13.052037,
    "_source" : {
      "store_id" : "1",
      "sku" : "PEL800049",
      "status" : 1,
      "status_value" : "Habilitado",
      "visibility" : 4,
      "tax_class_id" : 2,
      "tax_class_id_value" : "Taxable Goods",
      "name" : "lapices de colores pastel pelikan x12",
      "url_key" : "lapices-de-colores-pastel-pelikan-x12",
      "category_ids" : [
        2,
        135,
        139,
        214,
        452
      ],
      "position_category_2" : "10000",
      "name_category_2" : "RA▒~MZ ",
      "position_category_135" : "0",
      "name_category_135" : "ESCOLAR",
      "position_category_139" : "0",
      "name_category_139" : "LAPICES DE COLORES",
      "position_category_214" : "0",
      "name_category_214" : "LIBRERIA ",
      "position_category_452" : "0",
      "name_category_452" : "▒~ZTILES ESCOLARES Y KITS",
      "price_0_1" : "570.000000",
      "price_1_1" : "570.000000",
      "price_2_1" : "570.000000",
      "price_3_1" : "570.000000" 
....

Но если я запустил тот же запрос в магазине, это URL:

      https://store24.com.ar/catalogsearch/result/?q=lapices+de+colores

Результаты, хотя и связаны, но не те, которые дает elasticsearch.

В админке в магазинах-> Каталог-> Каталог-> «Сортировать по товарным объявлениям» устанавливается по позиции.

Я предполагаю, что это проблема с шаблоном, но я не знаю, как это исправить. Вот файл sorter.phtml, используемый шаблоном:

      <div class="toolbar-sorter sorter">
<label class="sorter-label" for="sorter"><?php /* @escapeNotVerified */ echo __('Sort by') ?></label>
<select id="sorter" data-role="sorter" class="sorter-options">
    <?php foreach ($block->getAvailableOrders() as $_key => $_order): ?>
        <option value="<?php /* @escapeNotVerified */ echo $_key; ?>"
            <?php if ($block->isOrderCurrent($_key)): ?>
                selected="selected"
            <?php endif; ?>
            >
            <?php echo $block->escapeHtml(__($_order)) ?>
        </option>
    <?php endforeach; ?>
</select>
<?php if ($block->getCurrentDirection() == 'desc'): ?>
    <a title="<?php /* @escapeNotVerified */ echo __('Set Ascending Direction') ?>" href="#" class="action sorter-action sort-desc" data-role="direction-switcher" data-value="asc">
        <span><?php /* @escapeNotVerified */ echo __('Set Ascending Direction') ?></span>
    </a>
<?php else: ?>
    <a title="<?php /* @escapeNotVerified */ echo __('Set Descending Direction') ?>" href="#" class="action sorter-action sort-asc" data-role="direction-switcher" data-value="desc">
        <span><?php /* @escapeNotVerified */ echo __('Set Descending Direction') ?></span>
    </a>
<?php endif; ?>

Я не уверен, где и что искать, есть идеи?

0 ответов

Другие вопросы по тегам