Magento的。仅为分组产品创建属性

时间:2015-11-03 06:00:04

标签: php magento magento-1.7 magento-1.9 magento-1.8

我正在尝试以编程方式为我网站上的所有分组产品创建属性。我正在尝试使用group创建自定义属性集。

$oEntitySetup = $this;
$oEntitySetup->removeAttribute('catalog_product', 'grouped_base_price');

$skeletonID=$oEntitySetup->getAttributeSetId('catalog_product','Default');
$entityTypeId = Mage::getModel('catalog/product')
    ->getResource()
    ->getEntityType()
    ->getId(); //product entity type

$attributeSet = Mage::getModel('eav/entity_attribute_set')
    ->setEntityTypeId($entityTypeId)
    ->setAttributeSetName("oggy_attr_set");

$attributeSet->validate();
$attributeSet->save();

$attributeSet->initFromSkeleton($skeletonID)->save();

$data = array(
    'attribute_set' => 'oggy_attr_set',
    'group'    => 'General',
    'label'    => 'Base Price',
    'apply_to' => 'grouped',
    'input'    => 'text',
    'visible'  => true,
    'visible_on_front' => true,
    'required' => true,
    'position' => 1,
    'global'   => 'Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL',
    'note'     => "Default Price For Configurable Products"
);
$oEntitySetup->addAttribute('catalog_product', 'grouped_base_price', $data);

$oEntitySetup->endSetup();

问题是属性出现在所有产品类型中。但我只需要分组产品。我做错了什么?

2 个答案:

答案 0 :(得分:2)

将创建的属性分配给特定的“属性集”,然后在创建任何组产品时 - 选择此属性集。

答案 1 :(得分:0)

代码中的

$ oEntitySetup包含所有产品,您从不接受特定的组,并确保将新属性提供给所有产品