Długie zapisywanie się produktów i kategorii
< 1 min czytania
Jeśli natrafiłeś w Magento 1 na problem długiego zapisu kategorii w panelu, zobacz poniższe rozwiązanie
Zmiany należy wykonać w dwóch plikach.
Skopiować plik app/code/core/Mage/CatalogRule/Model/Rule.php
do app/code/local/Mage/CatalogRule/Model/Rule.php
zmienić kod w okolicy lini 260
public function applyAllRulesToProduct($product) { $this->_getResource()->applyAllRulesForDateRange(NULL, NULL, $product); $this->_invalidateCache(); if ($product instanceof Mage_Catalog_Model_Product) { $productId = $product->getId(); } else { $productId = $product; } if ($productId) { Mage::getResourceSingleton('catalog/product_indexer_price')->reindexProductIds(array($productId)); } }
Zapis kategorii
Skopiować plik app/code/core/Mage/Catalog/Model/Category.php
do app/codel/local/Mage/Catalog/Model/Category.php
w funkcji afterCommitCallback() zakomentować
Mage::getSingleton('index/indexer')->processEntityAction( $this, self::ENTITY, Mage_Index_Model_Event::TYPE_SAVE );
Przesuwanie kategorii w drzewie
w funkcji move() zakomentować
Mage::getSingleton('index/indexer')->processEntityAction( $this, self::ENTITY, Mage_Index_Model_Event::TYPE_SAVE );