我使用下面显示的sql将新的层级价格导入magento数据库,当我在管理员中查看产品时,层是正确的。但是,在前端,我不会在后端保存产品下显示层。
我删除了var / cache,重建了目录索引,刷新了库存状态(?),甚至尝试对这些产品进行批量更新属性,这些都没有刷新价格缓存。我在产品实体表中找不到与层级定价相关的任何价值进行调整。
我发现Price
中有一个Mage_CatalogIndex
对象让我觉得它需要刷新......
我正在使用Magento v1.3.2.4并且有几百个SKU,我不想手动保存在后端!
insert ignore into `catalog_product_entity_tier_price` (all_groups, customer_group_id, qty, entity_id, `value`) select '0','5','12',entity_id,'10' from `catalog_product_entity` where category_ids = 3;
欢迎所有建议。
谢谢, JD
答案 0 :(得分:1)
我想知道尝试这样的事情会有所帮助吗?
$productsForCatalogIndexUpdate = array(123,1231); //Add your product ids here
if (count($productsForCatalogIndexUpdate)) {
Mage::log("About to update the catalog price index on the following products " . join(', ', $productsForCatalogIndexUpdate));
Mage::getModel('catalogindex/indexer')->plainReindex(
$productsForCatalogIndexUpdate,
Mage_CatalogIndex_Model_Indexer::REINDEX_TYPE_PRICE
);
Mage::getModel("catalogindex/observer")->clearPriceAggregation();
}
如果我没记错的话,它会重建指定价格的价格指数表。