我正在尝试为Magento中的类别添加一些自定义属性。
所以我已经创建了我的第一个模块,它将添加一个自定义属性,遵循以下教程:http://gauss-development.com/blog/tutorials/adding-custom-category-attributes-magento/
一切似乎都运行正常,模块似乎已安装(我可以在系统>高级>禁用模块输出中看到它)。
但我的自定义属性没有出现。完全没有。
我已经完成了过去4天的教程。一遍又一遍地。尽可能地密切关注,尽可能复制和粘贴。我看起来似乎与此相似的其他教程,我也尝试过它们。所有这些教程最终都得到相同的结果,没有错误,没有任何错误,模块似乎被加载,但没有出现我的新自定义属性的迹象。
我觉得我遗漏了这些教程中没有提及的内容,但我不知道是什么。
任何人都可以想到我可能做错的事吗?
如果您需要查看任何代码,请查看上面提到的教程。是否存在缺少教程的信息或说明?记住我没有其他创建模块的经验,所以我跟着这些信。如果他们假设我有一个基本的信息,这可能是我正在滑倒的地方,但目前我无法知道我错过了什么。
答案 0 :(得分:2)
请检查数据是否出现在您的数据库中,您可以在数据库表 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();
请检查组是否设置为“常规信息”,如果不是,它将不会显示在“类别”视图的“常规”选项卡中。
您可以检查的另一个错误是文件是否具有正确的名称。它应该有正确的版本号。
此外,如果过去出现错误并且您想要更正错误,则需要重新初始化模块的设置过程。为此,请删除 core_resource 表中的module-entry,从后端注销并重新登录。每次希望重新运行安装脚本时,都需要执行此操作。
答案 1 :(得分:0)
只需检查是否需要重新编制索引。转到System-&gt; Configuration-&gt; Catalog-&gt; Frontend并将 Flat Catalog Category 设为No,然后检查您的属性是否显示。如果是,则需要重新索引并清除缓存。