自定义类别属性

时间:2013-10-15 10:53:46

标签: magento magento-1.4

我正在尝试在我的magento后端类别中使用multiselect选项。

我有以下代码:

$installer = $this;
$installer->startSetup();
$attribute  = array( 
        'group' => "General Information", // and this one 
        'label'  => 'Location', 
        'type' => 'varchar', 
        'input' => 'multiselect', 
        'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE, 
        'visible' => true, 
        'required' => false, 
        'is_user_defined' => true, 
        'option'=> array (
                'value' => array(
                        'england'=> array( 
                        0 =>'England'),
                        'scotland'=> array( 
                        0 =>'Scotland')
                        )
                )
    );

$installer->addAttribute('catalog_category', 'bottom_description', $attribute);
$installer->endSetup();

这会在后端创建一个新属性,但没有值。

我是否需要配置其他任何内容以便查看这些值?

由于

编辑:

在config.xml中我有:

<version>0.8.0</version>

我有另一个档案:

mysql4-upgrade-0.7.0-0.8.0.php

当我清除缓存并访问类别时,似乎没有运行此文件。

有什么想法吗?

3 个答案:

答案 0 :(得分:1)

你在mysql4-upgrade脚本中编写上面的脚本吧?你有更新config.xml版本 因为只有在config.xml中升级版本时它才会执行 所以请检查

答案 1 :(得分:1)

Arrr ....你很亲密。它应该是'value' => array(....)而不是'values' => array(...) 但我在这看到一个问题。向属性添加选项时,选项值应为int值 假设您在代码中添加了该属性,并使用Location England,Scotland保存了一个产品。数据库中的值不会是england,scotland类似于:76,77。苏格兰和英格兰选项的自动生成的Ids。如果要将值保存为england,scotland,则需要为此属性编写自定义源模型 You can find here an example and adapt it to your needs.

答案 2 :(得分:0)

要在类别部分添加自定义yes / no属性,请创建模块并输入以下代码。

<?php
$this->startSetup();
$this->addAttribute(Mage_Catalog_Model_Category::ENTITY, 'featured_product', array(
    'group'         => 'General Information',
    'input'         => 'select',
    'type'          => 'text',
    'label'         => 'Featured Category',
    'backend'       => '',
    'visible'       => true,
    'required'      => false,
    'visible_on_front' => true,
    'global'        => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL,
    'source' => 'eav/entity_attribute_source_boolean',
));?>

请参阅我的教程。

http://www.pearlbells.co.uk/how-to-add-custom-attribute-dropdown-to-category-section-magento/