Я не мог найти способ сделать переиндексацию в массовых действиях на magento 2.
Похоже, вам нужно запустить его из cronjob. Есть ли альтернативный способ переиндексации данных в magento 2 из бэкэнда или командной строки, как это было в Magento 1.x ( php shell/indexer.php -reindexall
)?
Ответы:
Чтобы переиндексировать в magento 2, перейдите в CLI, а затем в корневую папку вашей установки magento и выполните следующую команду:
источник
Запустите эту команду в вашем CLI
и если вы хотите переиндексировать только один индексатор, напишите следующую команду:
где
indexer_name
можно найти, набрав следующую команду:источник
Вот как вы можете добиться успеха, используя команды индексирования CLI Magento 2
Перейдите в командный файл CLI Magento, доступный в каталоге Magento / bin cd magento_folder / bin, и запустите вашу команду напрямую, используя magento в терминале или замазке.
Вот как это будет работать для индексации в Magento 2
Получить список доступных индексаторов в Magento 2
Как проверить статус индексатора
Следующая команда покажет вам статус всех индексаторов, требуется ли индексация или она готова.
Вы также можете проверить статус отдельного индексатора: скажем, я хочу проверить статус catalog_category_product
Как переиндексировать всю доступную индексацию в Magento 2
Если вы заполняете лимит памяти, попробуйте эту команду
источник
Используйте Magento CLI. Запустить
php bin/magento indexer:reindex
из корневого каталога проекта.источник
Если какой-либо индекс находится в цикле. Вы можете сбросить все индексы с помощью
indexer:reset
затем использовать обычный переиндекс
источник
Для переиндексации из командной строки выполните следующую команду:
Выше команда должна быть запущена из корневого каталога magento
источник
В корневом интерфейсе командной строки Magento выполните следующую команду
Затем выполните команду ниже
источник
Альтернативное решение добавить
php bin/magento indexer:reindex
команду в cronjob.Я следил за этим, и он работал в моей системе
источник
решено с
php bin/magento indexer:reindex
источник
а. Переиндексация от администратора Magento * иногда не все индексаторы переиндексируются с помощью переиндексации администратора> проверьте также переиндексацию через SSH
Это вызовет переиндексацию для выбранных индексаторов.
Важно: Иногда не все индексаторы переиндексируются с помощью переиндексации администратора, даже если время и дата отображаются как обновленные в администраторе magento. Мы рекомендуем дважды проверить процесс переиндексации, используя метод переиндексации SSH / CLI, представленный ниже.
Режим переиндексации: Вы можете установить свои индексаторы как «Обновление при сохранении», и объекты хранилища будут индексироваться при сохранении конфигураций администратора или как «Обновление по расписанию», и индексаторы будут реиндексироваться периодически (по умолчанию один раз в день). Чтобы «Обновление по расписанию» работало нормально, убедитесь, что на вашем сервере правильно выполняются задания cron. Ваш хостинг-партнер или команда разработчиков могут помочь вам с настройкой заданий cron.
Готово!
б. Переиндексация через SSH / CLI (рекомендуется)
Подключитесь к вашей установке Magento 2 в корне вашего проекта. (обычно в public_html или в yourmagentoinstallation.com/html)
Переиндексировать все индексаторы Magento 2, используя следующую команду:
php bin/magento indexer:reindex
Вы получите аналогичный результат, представленный ниже:
Сетка Design Config Grid была успешно перестроена в 00:00:00
Индекс сетки клиентов был успешно перестроен в 00:00:00
Индекс категории товаров был успешно перестроен в 00:00:00
Индекс товарных категорий был успешно перестроен в 00:00:00
Индекс цен на товары был успешно восстановлен в 00:00:01
Индекс EAV продукта был успешно перестроен в 00:00:01
Индекс поиска по каталогу был успешно перестроен в 00:00:01
Фондовый индекс был успешно восстановлен в 00:00:00
Правило каталога Индекс продукта был успешно перестроен в 00:00:01.
Каталог правил продукта каталога был успешно перестроен в 00:00:00
Проверьте состояние индексаторов и определите индексаторы, которые по-прежнему необходимо индивидуально переиндексировать, иногда общий переиндекс не работает для всех индексаторов
php bin/magento indexer:status
Вы получите аналогичный результат, представленный ниже:
Сетка Конфигурации Проекта: Готов
Сетка клиента: Готов
Категория Продукты: Готовые
Категории продуктов: Готов
Цена продукта: Готов
Продукт EAV: Готов
Поиск по каталогу: Готов
Готово
Каталог Правило продукта: требуется переиндексация
Каталог Продукт Правило: Готово
Показать список индексаторов и соответствующий идентификатор индексатора, которые необходимо использовать для индивидуального переиндексации.
php bin/magento indexer:info
Вы получите аналогичный результат, представленный ниже:
design_config_grid Design Config Grid
customer_grid Customer Grid
catalog_category_product Категория Продукты
catalog_product_category Категории продуктов
catalog_product_price Цена продукта
catalog_product_attribute Продукт EAV
catalogsearch_fulltext Поиск по каталогу
cataloginventory_stock Акции
catalogrule_rule Каталог Правило Продукт
catalogrule_product Каталог Продукт Правило
Переиндексировать каждый индексатор, который имеет статус «Требуется переиндексация», используя команды ниже
php bin/magento indexer:reindex [catalog_category_flat]
Пример:
php bin/magento indexer:reindex catalogrule_rule
Готово!
источник
Иногда, чтобы сделать это проще, вы можете захотеть переиндексировать напрямую от администратора без участия cron (особенно если вы не настроили свои задания cron и сайт все еще находится в разработке). В таких случаях вы можете использовать бесплатное расширение Admin Reindex [M2], которое позволяет вам переиндексировать от администратора.
источник
Вы можете переиндексировать, используя два разных метода.
1- Переиндексация из панели администратора
Для этого
Перейдите в Система> Инструменты> Управление индексами
Установите флажок рядом с каждым типом индексатора, чтобы изменить
Выберите режим индексирования из выпадающего списка Acton. Нажмите Submit.
2- Переиндексация с использованием CLI (интерфейс командной строки)
Выполните следующую команду в вашем CLI
Для просмотра списка индексаторов
Запустите следующую команду:
Все еще сталкиваясь с любой проблемой / ошибкой, вы можете прочитать эту подробную статью на
Как переиндексировать Magento 2 из панели администратора или SSH / CLI? https://www.fmeextensions.com/blog/magento-2-reindex-from-admin/
источник