Magento - 添加新的catalog_product属性

时间:2013-02-11 17:30:51

标签: php magento magento-1.5

我想添加一个新的产品属性,并使用与此类似的代码:

/**
 * @var $installer Mage_Catalog_Model_Resource_Eav_Mysql4_Setup
 */
$installer = $this;

$attribute = array(
    'label'             => 'New Attribute',
    'required'          => false,
    'type'              => 'varchar',
    'input'             => 'text'
);
$installer->addAttribute('catalog_product', 'new_attribute', $attribute);

哪种方法正常。

但是,我想将此属性添加到特定属性集中,并且仅添加到此特定属性集。

如何实现这一目标?

1 个答案:

答案 0 :(得分:1)

假设你知道$attributeSetId,程序如下:

  1. 获取$ attributeId
  2. 获取属性集的属性组ID (例如“一般”组)
  3. 将属性添加到集合和组
  4. 例如

            $attributeId = $installer->getAttributeId(
                'catalog_product', 
                'new_attribute'
            );
    
            $attributeGroupId = $installer->getAttributeGroup(
                'catalog_product',
                $attributeSetId,
                'General'
            );
    
            $installer->addAttributeToSet(
                'catalog_product',
                $attributeSetId, 
                $attributeGroupId,
                $attributeId 
            );