2012-03-23 98 views
0

我真的不能找到一个满意的答案,以下问题:在Magento的 - 添加全球产品属性

什么是最好的做法为模块的新产品属性添加到所有 attribute_sets(以及可能的某个位置)。

我发现的所有方法似乎都是指向一个属性集添加一个新属性。

回答

4

没有为它
实施例一的magento方式:

$installer->addAttribute('catalog_product', 'test_me', array(
'label'   => 'test Me', 
'input'   => 'textarea', 
'type'   => 'text', 
'class'   => '', 
'global'  => true, 
'visible'  => true, 
'required'  => false, 
'user_defined' => true, 
'default'  => '', 
'apply_to'  => 'simple,configurable', 
'visible_on_front' => true, 
'is_configurable' => false, 
'wysiwyg_enabled' => true, 
'used_in_product_listing' => true, 
'is_html_allowed_on_front' => true, 
'group'   => 'Config', 
'sort_order' => 25 

));

要为每个attribute_set添加属性,您需要设置'user_defined' = true并设置'group' = 'your_group_name'。如果需要,magento会将您的组添加到每个属性集,并为其添加属性。

+0

谢谢,要试一试:-) – 2012-03-23 13:42:20

+0

很好,谢谢 – 2012-03-23 16:21:05

+1

快速注意:Mage_Eav_Model_Entity_Setup :: addAttribute(在1.6.x中)将添加新的如果您指定组名称,如果user_defined未设置,或者两者均为“未设置”,则将属性设置为所有设置(非常慢)。如果您未指定组名称,则会将该属性置于“常规”组中。 – wierdo 2012-03-23 19:14:08

0

一旦添加了一个属性,您可以将其分配给一个或所有属性集,但它不是唯一的第一个分配给它的集。这回答了你的问题了吗?

+0

我主要想知道的是,我必须'手动'遍历所有属性集并添加它,还是有一些全局标志使默认情况下所有属性集都可用的属性? – 2012-03-23 13:20:22

+0

我不知道一个快速的方法,但可能有一个.. – 2012-03-23 13:26:32