【问题标题】:Magento how to save custom field in admin panelMagento如何在管理面板中保存自定义字段
【发布时间】:2016-04-06 08:44:59
【问题描述】:

Manage Products -> Edit 一个产品 -> Images 我添加了 2 个新列(位于 catalog_product_entity_media_gallery_value 表中)。

每次导入媒体时都会填充这 2 列,并且每个字段仅显示值(您不能输入新值)。它也用于前端。 我在自己的主题中修改了正确的管理模板文件并创建了一个新的 product.js 来显示 2 个新字段。 到目前为止,一切都按预期工作。

但是,每当用户尝试修改 Images 部分中的某些内容时,比如说图像的标签或位置,我的 2 个自定义字段都不会保存,Magento 会为它们提供 NULL 值。

因为 2 个新列不是输入字段,我认为 Magento 不会更新它,但看起来确实如此。我一直在尝试查找为 Images 部分保存标签和位置的位置,以便我可以添加我的自定义值,但我找不到它。有人能指出我正确的方向吗?

还是听 catalog_product_save_after 事件并创建一个观察者来保存我的自定义值会更好?

任何帮助都会很棒,谢谢。

【问题讨论】:

    标签: php magento


    【解决方案1】:

    终于找到它了,我在之前的搜索中错过了它。我会自己回答,以防万一它可以帮助别人。代码在Mage_Catalog_Model_Product_Attribute_Backend_Media 类中,在afterSave 函数内。 你所要做的就是重写它。

    Config.xml 应包含以下内容:

    <models>
        <catalog_resource>
            <rewrite>
                <product_attribute_backend_media>
                    Namespace_Module_Model_Resource_Product_Attribute_Backend_Media
                </product_attribute_backend_media>
            </rewrite>
        </catalog_resource>
    </models>
    

    类应该是:Namespace_Module_Model_Product_Attribute_Backend_Media extends Mage_Catalog_Model_Product_Attribute_Backend_Media

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-07
      • 2020-06-21
      • 1970-01-01
      • 1970-01-01
      • 2011-03-29
      • 1970-01-01
      • 2020-01-01
      • 1970-01-01
      相关资源
      最近更新 更多