0

我想添加一个新的产品属性并使用类似于以下的代码:

/**
 * @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);

哪个工作正常。

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

如何做到这一点?

4

1 回答 1

1

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

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

例如

        $attributeId = $installer->getAttributeId(
            'catalog_product', 
            'new_attribute'
        );

        $attributeGroupId = $installer->getAttributeGroup(
            'catalog_product',
            $attributeSetId,
            'General'
        );

        $installer->addAttributeToSet(
            'catalog_product',
            $attributeSetId, 
            $attributeGroupId,
            $attributeId 
        );
于 2013-02-11T17:51:22.830 回答