Jak reindeksować Magento 1.x za pomocą wiersza poleceń

Odpowiedzi:

41
step 1 : cd [MAGENTO_ROOT]/shell/

Powinieneś zastąpić [MAGENTO_ROOT] własną ścieżką bezwzględną do folderu głównego Magento. Na przykład / home / Thief / public_html / Następnie wyświetl listę wszystkich plików, aby zobaczyć, co mamy tutaj. Wystarczy wpisać proste polecenie:

step 2 : ls -l

Jeśli możesz znaleźć coś takiego jak „indexer.php”, właśnie tego potrzebujemy i możemy kontynuować. Aby zobaczyć status wszystkich indeksów, możesz wykonać polecenie

php indexer.php --status

step 3 : php indexer.php --reindex catalog_product_price 

Tutaj katalog_produktu_cena jest typem indeksu, który chcesz odbudować. Możesz użyć kolejnych argumentów dla różnych typów indeksów:

catalog_product_attribute Product Attributes
catalog_product_price Product Prices
catalog_url Catalog Url Rewrites
catalog_product_flat Product Flat Data
catalog_category_flat Category Flat Data
catalog_category_product Category Products
catalogsearch_fulltext Catalog Search Index
cataloginventory_stock Stock status

Dla wszystkich reindexall: php indexer.php --reindexall

Proces ponownego indeksowania w tle Czasami możesz chcieć uruchomić ten proces w tle, aby wyłączyć komputer lub wypić kilka piw. W takim przypadku możesz użyć narzędzia wiersza polecenia o nazwie „nohup”. Pozwala na uruchomienie prawie dowolnej komendy CLI w tle niezależnie od bieżącej sesji. Jeśli chcesz ponownie zindeksować coś w tle, twoje polecenie powinno wyglądać następująco:

nohup php indexer.php --reindex catalog_product_price &

Aby uzyskać więcej informacji, skorzystaj z tego linku

Prakash Patel
źródło
19

Możesz użyć

Przejdź do folderu powłoki i uruchom to polecenie cmd

php indexer.php --reindexall

Na osobne

php yourmagentofolder/shell/indexer.php -reindex catalog_product_attribute
php yourmagentofolder/shell/indexer.php -reindex catalogsearch_fulltext
php yourmagentofolder/shell/indexer.php -reindex catalog_category_flat
php yourmagentofolder/shell/indexer.php -reindex cataloginventory_stock
php yourmagentofolder/shell/indexer.php -reindex catalog_category_product
php yourmagentofolder/shell/indexer.php -reindex catalog_product_price
php yourmagentofolder/shell/indexer.php -reindex tag_summary
php yourmagentofolder/shell/indexer.php -reindex catalog_url
Sagar Dobariya
źródło
9
@vaibhavahalpara, dlaczego zmuszasz go do usunięcia odpowiedzi? Każdy może podzielić się odpowiedzią, o której myśli.
Teja Bhagavan Kollepara
3

W przypadku Magento 2:

Z katalogu głównego magento uruchom poniżej

php bin/magento indexer:reindex
Rohith Sathyanarayana
źródło
1

Użyj tego polecenia z folderu głównego swojego projektu, aby uruchomić wszystkie indeksy:

php shell/indexer.php --reindexall

Możesz także uruchomić określony indeks encji, przekazując jako argument polecenia:

php shell/indexer.php --reindex <indexer>
Sourabh Kumar Sharma
źródło