【问题标题】:How to show my own products only Magento如何只展示我自己的产品 Magento
【发布时间】:2014-01-28 07:10:26
【问题描述】:

我在 Magento 中设置了“店主”角色。具有该角色的用户将只能添加/编辑/删除产品。

我需要有人告诉我如何限制这些用户在转到目录 -> 管理产品时只能在列表中看到他们的产品?

如果可能的话,我想通过代码编辑来实现这一点。

还要注意所有用户都在使用同一个商店。

谢谢

【问题讨论】:

    标签: magento admin roles editing product


    【解决方案1】:

    这不是 Magento 社区版(或企业版)中的“开箱即用”功能,因此您需要编写一些代码才能使其工作。

    一般来说,你会想要:

    1. 向产品添加(隐藏?)属性以存储产品“所有者”的用户 ID。
    2. catalog_product_save_before 编写一个事件观察器,它将当前用户的用户ID 字段分配给新的产品所有者属性。
    3. 重写Mage_Adminhtml_Block_Catalog_Product_Grid_prepareCollection_addColumnFilterToCollection 方法,将product_owner 属性添加到集合中,并将其过滤到当前用户。

    这将确保为给定用户显示在网格中的唯一产品是他们拥有的产品。但是,我还将在 controller_action_predispatch_adminhtml_catalog_product_editcontroller_action_predispatch_adminhtml_catalog_product_save 事件上实现一个观察者,以在产品被编辑/保存之前检查产品所有者的价值,以确保用户没有尝试编辑没有出现在网格上。

    如果您在添加属性、设置块重写或创建事件观察器方面需要任何进一步的帮助,我相信这些问题已经在 SO 上得到解答,这个问题有点过于宽泛,无法详细回答.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-12
      • 1970-01-01
      相关资源
      最近更新 更多