我正在尝试构建一个数据安装脚本,用于设置新的网上商店。此脚本为特定商店创建类别、页面和静态块以及默认设置(我们使用多商店设置来托管商店)。在我们的开发/登台设置中,这个脚本运行良好,所有类别都构建没有任何问题。但是在我们的实时系统上,这个脚本失败了。经过一些调试后,我发现区别在于实时系统上的平面目录使用情况。
在启用平面表的情况下创建类别的问题在于根据给定的 parentId 获取父路径信息:
$parentCategory = Mage::getModel('catalog/category')->load($parentId);
如果不启用平面类别,这会给出正确的 parentCategory,但启用平面类别会给出一个空对象。
为什么启用平面类别的这种行为?