题
Magento 类别和商店 ID。
在catalog_category_flat_store_1数据库表中,store_id为1。
当我检查catalog_category_entity_int时,所有条目的store_id为0。
如果我将其更新为 1,所有类别都会从前端消失。
管理商店表示:主要网站 ID:1个主要网站商店ID:1商店查看名称Engligh ID:1
我在更新导航菜单中显示的类别时遇到问题,并想确认 magento 在数据库表中具有不同的存储 id 是否正常。
解决方案
首先,您不应该直接编辑数据库。
现在解释一下。
store_id = 0
在一个 catalog_category_entity_*
表意味着这是为“默认配置”级别上的属性设置的值。
将它们全部设置为 0 意味着您没有为任何属性的特定商店视图设置任何值。这意味着所有商店视图都将使用所有属性的默认值。
桌子 catalog_category_flat_store_*
是自动生成的表,用于加速前端的读取过程。
表名称中的最后一个数字(示例中为 1)是将使用该表的商店视图 ID。
专栏 store_id
这些平面表中的最后一个数字始终与表名称中的最后一个数字相同,即使它在 EAV 表中为 0。
这样你在调用时就不会得到错误的结果 $category->getStoreId()
.
所以把一切都恢复原状。
如果您在更新类别时遇到问题,请提出一个新问题,解释问题是什么以及您想要实现的目标。