将 Magento 类别复制到父级
设想: 一个新的空白 Magento,带有类别产品和客户导入,需要进行一些修复。
类别结构:
Root
L..Category_parent1 (0 products)
L..Category_child1 (22)
L..Category_child2 (34)
L..Category_parent2 (0)
L..Category_child1 (22)
L..Category_child2 (34)
L..Category_parent3 (0)
L..Category_child1 (22)
L..Category_child2 (0)
L..Category_child2_child1 (22)
L..Category_child2_child2 (34)
L..Category_child3 (10)
我想使用 SQL 查询或 php 脚本将所有产品从子类别复制到其相对父类别。 (我不知道是否可以通过 Magento 管理员来做到这一点)。
期望的结果:
Root
L..Category_parent1 (22 + 34 products)
L..Category_child1 (22)
L..Category_child2 (34)
L..Category_parent2 (22 + 34)
L..Category_child1 (22)
L..Category_child2 (34)
L..Category_parent3 (22 + 22 + 34 + 10)
L..Category_child1 (22)
L..Category_child2 (22 + 34)
L..Category_child2_child1 (22)
L..Category_child2_child2 (34)
L..Category_child3 (10)
更新! 有没有办法只在展示产品上做到这一点? 以这种方式查看产品与自己的类别之间的关系(只需在列表中的视图布局中执行此操作...)?
Scenario:
A new blank Magento with a category product and customer import with some fixes to do.
Category structure:
Root
L..Category_parent1 (0 products)
L..Category_child1 (22)
L..Category_child2 (34)
L..Category_parent2 (0)
L..Category_child1 (22)
L..Category_child2 (34)
L..Category_parent3 (0)
L..Category_child1 (22)
L..Category_child2 (0)
L..Category_child2_child1 (22)
L..Category_child2_child2 (34)
L..Category_child3 (10)
I want to copy all products from a child category to its relative parent using a SQL query or a php script. (I don't know if it's possible to do this through the Magento admin).
Desired Result:
Root
L..Category_parent1 (22 + 34 products)
L..Category_child1 (22)
L..Category_child2 (34)
L..Category_parent2 (22 + 34)
L..Category_child1 (22)
L..Category_child2 (34)
L..Category_parent3 (22 + 22 + 34 + 10)
L..Category_child1 (22)
L..Category_child2 (22 + 34)
L..Category_child2_child1 (22)
L..Category_child2_child2 (34)
L..Category_child3 (10)
UPDATE!
Is there a way to do this only on show products?
See products in this way manteining relashionship with their own categories (simply do that in view layout in list...)?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
作为部分解决方案:
这应该选择所有内容并将其提升一个级别(直到我们到达根)。单独的查询将有助于位置列(当前硬编码为 1)。但最大的问题是,您想要的结果实际上将项目提升到不止一级,而此查询只执行一级。为了真正正确地概括,也许可以将此查询放入某些代码中,然后从最低深度开始重复它并向上移动。
希望有帮助!
谢谢,
乔
As a partial solution:
This should select everything and bump it up a level (until we get to the root). A separate query would help the position column (currently hardcoded to 1). The big problem is, though, that your desired outcome actually bumps items more than one level, whereas this query only does one level. To really generalize properly, maybe drop this query into some code and repeat it starting at the lowest depth and move upwards.
Hope that helps!
Thanks,
Joe
似乎对所有类别设置 is_anchor 解决了我的问题,但 joseph 提供的答案回答了问题
It seems that setting up is_anchor to all categories solve my problem, but the answer provided by joseph answer the question