Magento在企业版中重新编制索引

时间:2013-09-26 13:19:07

标签: php magento

如何在 magento ee 1.13.0.2 中为“库存状态”和“目录产品价格”手动重新编制索引?

其实我已尝试过

$process = Mage::getModel('index/indexer')->getProcessByCode('catalog_product_price');
$process->reindexAll();

但它没有达到我的预期。

3 个答案:

答案 0 :(得分:3)

几天前我自己偶然发现了这件事。在EE中,索引已经大量重写,这就是为什么旧式重建索引不起作用的原因。你不能随意重新索引,而是你可以安排你的reindex,以便下一个cron作业将在后台为你做:

$client = Mage::getModel('enterprise_mview/client');
$client->init('catalog_product_index_price');
$metadata = $client->getMetadata();
$metadata->setInvalidStatus();
$metadata->save();

新索引系统的说明:http://www.eschrade.com/page/indexing-in-magento-or-the-wonderful-world-of-materialized-views/

答案 1 :(得分:-2)

$process = Mage::getSingleton('index/indexer')->getProcessById(2);

$process = Mage::getSingleton('index/indexer')->getProcessByCode('catalog_product_price');

或尝试$process->reindexEverything();

Process Name        ID          Code
Product Attributes      1       catalog_product_attribute
Product Prices          2       catalog_product_price
Catalog URL Rewrites    3       catalog_url
Product Flat Data       4       catalog_product_flat
Category Flat Data      5       catalog_category_flat
Category Products       6       catalog_category_product
Catalog Search Index    7       catalogsearch_stock
Stock Status            8       cataloginventory_stock
Tag Aggregation Data    9       tag_summary

答案 2 :(得分:-2)

在magetno 1.13.0.2中,Reindex将由MySQL触发器自动完成。 只有你需要的 - 为magento设置cronjob。

为了测试它,您可以手动运行http://yousite.com/cron.php