Si actualiza las opciones de stock de productos, puede reindexar las tablas de "Estado de stock" mediante programación:
try {
$indexer = Mage::getModel('index/indexer')->getProcessByCode('cataloginventory_stock');
$indexer->reindexEverything();
} catch (Exception $e) {
//Some error handling
}
Para obtener el uso del modelo indexador Mage::getModel('index/indexer')->getProcessByCode('some_indexer_code_given_below')
. Magento ofrece varios indexadores. Si actualiza el producto mediante programación, puede usar los siguientes indexadores, solo doy indexer_code y debe cambiar el fragmento dado (consulte la tabla index_process):
- catalog_product_attribute - Atributos del producto (si actualizó los atributos que se utilizan en capas de navegación)
- catalog_product_price - Precios de productos (si actualizó precios)
- catalog_url: reescrituras de URL de catálogo (si actualizó el producto o la URL de Catalag)
- catalog_product_flat - Datos planos del producto (si su tienda usa tablas Flate y si actualizó los atributos del producto que se usan en la lógica de la interfaz donde sea)
- catalog_category_flat - Datos planos de categoría (si actualizó los atributos de categoría)
- catalog_category_product - Productos de categoría (si agregó o eliminó productos del catálogo)
- catalogsearch_fulltext - Índice de búsqueda en el catálogo (si actualizó los atributos de búsqueda del producto)
- cataloginventory_stock - Estado del stock (si actualizó las opciones de stock del producto)
- tag_summary - Datos de agregación de etiquetas (si actualizó la etiqueta del producto)
Y puede (debe actualizar los cobros después de cualquier actualización de productos / categorías) limpiar la caché de magento mediante programación en su lógica:
Mage::app()->getCacheInstance()->flush();
Mage::app()->cleanCache();