【问题标题】:Magento: Making custom category attributeMagento:制作自定义类别属性
【发布时间】:2015-08-31 13:18:40
【问题描述】:

我正在尝试向 Magento 中的类别添加一些自定义属性。

所以我创建了我的第一个模块,该模块将添加单个自定义属性,按照此处的教程进行操作:http://gauss-development.com/blog/tutorials/adding-custom-category-attributes-magento/

一切似乎工作正常,模块似乎已安装(我可以在系统 > 高级 > 禁用模块输出中看到它)。

但是我的自定义属性没有出现。完全没有。

在过去的 4 天里,我一直在学习本教程。一遍又一遍地。尽可能紧跟它,尽可能复制和粘贴。我的其他教程似乎与此类似,我也尝试过关注它们。所有这些教程都以相同的结果结束,没有错误,似乎没有任何问题,模块似乎已加载,但没有出现我的新自定义属性的迹象。

我觉得我错过了这些教程中没有提到的东西,但我不知道是什么。

谁能想到我做错了什么?

如果您需要查看任何代码,请查看上面提到的教程。是否有一条信息或说明缺少教程?请记住,我在创建模块方面没有其他经验,所以我严格按照这些来操作。如果他们假设我会掌握一些基本信息,这可能是我的失误之处,但目前我无法知道我错过了什么。

【问题讨论】:

    标签: magento


    【解决方案1】:

    请检查该属性是否出现在您的数据库中,您可以在数据库表 eav_attribute 中的字段 attribute_code 中搜索您的属性名称(例如来自我的下面的文件,它将是 cat_short_description。如果它没有出现在数据库中,那么您的模块设置中有一些错误。

    我使用的代码(文件 etc/config.xml):

    <?xml version="1.0"?>
    <config>
    <modules>
        <Andreabiedermann_Categoryattributes>
            <version>0.0.1</version>
        </Andreabiedermann_Categoryattributes>
    </modules>
    
    <global>
        <resources>
            <Categoryattributes_setup>
                <setup>
                    <module>Andreabiedermann_Categoryattributes</module>
                    <class>Mage_Eav_Model_Entity_Setup</class>
                </setup>
                <connection>
                    <use>default_setup</use>
                </connection>
            </Categoryattributes_setup>
        </resources>
    </global>
    </config>
    

    和mysql4-install-0.0.1.php下的sql/Categoryattributes_setup/

    $this->startSetup();
    
    $this->addAttribute('catalog_category', 'cat_short_description', array(
        'group'         => 'General Information',
        'input'         => 'textarea',
        'type'          => 'text',
        'label'         => 'Short Description',
        'backend'       => '',
        'visible'       => true,
        'required'      => false,
        'default'       => '',
        'visible_on_front' => true,
        'user_defined'  =>  true,
        'is_html_allowed_on_front' => true,
        'global'        => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE,
    ));
    
    $this->endSetup();
    

    请检查 group 是否设置为“常规信息”,如果不是,它将不会出现在类别视图的常规选项卡中。

    您可以检查的另一个错误是文件是否具有正确的名称。它应该有正确的版本号。

    此外,如果过去有错误并且您想更正它,您需要重新初始化模块的设置过程。为此,请删除 core_resource 表中的模块条目,从后端注销并重新登录。每次您希望安装脚本再次运行时都需要这样做。

    【讨论】:

      【解决方案2】:

      只需检查您是否需要完成重新索引。转到 System->Configuration->Catalog->Frontend 并将 Flat Catalog Category 设置为 No,然后检查您的属性是否显示。如果是这样,那么您需要重新索引并清除缓存。

      【讨论】:

        猜你喜欢
        • 2011-02-22
        • 1970-01-01
        • 2012-07-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-04-14
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多