设置脚本中的多选择属性选项的设置顺序
-
16-10-2019 - |
题
在我们开发的一个模块中,我们需要创建具有多个选项的多选择属性。默认情况下给出某个顺序,这是非常重要的。
这是添加属性的当前代码:
$installer->addAttribute('catalog_product', 'tariffplan_sms_slider', array(
'attribute_set' => 'Randomattributeset',
'group' => 'Sample',
'type' => 'varchar',
'default' => 0,
'required' => false,
'visible' => true,
'backend' => 'eav/entity_attribute_backend_array',
'frontend' => '',
'label' => 'Random label',
'note' => '',
'input' => 'multiselect',
'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_WEBSITE,
'option' => array ('value' =>
array(
'one' => array("Low"),
'two' => array("Medium"),
'three' => array('High'),
'four' => array('Unlimited')
)
),
'visible' => true,
'required' => false,
'user_defined' => true,
'default' => 0,
'visible_on_front' => false,
'used_in_product_listing' => false,
'unique' => false
));
如您所见,我为将创建的此属性提供了一系列选项。 最重要的是,我想设置订单 (请参阅后端中的位置输入字段) 每个选项.
我尝试了以下以下内容,但它不起作用:
'option' => array (
'value' => array(
'one' => array("Don't care"),
'two' => array("Low"),
'three' => array('High'),
'four' => array('Unlimited')
),
'order' => array(
'one' => 0,
'two' => 1,
'three' => 2,
'four' => 3
)
),
版本: Magento Ver。 1.7.0.1
有人有一个主意吗?
解决方案
我自己修复了它 addAttributeOption()
内部方法 Mage_Eav_Model_Entity_Setup
:
结果:
$installer->addAttribute('catalog_product', 'tariffplan_sms_slider', array(
'attribute_set' => 'Randomattributeset',
'group' => 'Sample',
'type' => 'varchar',
'default' => 0,
'required' => false,
'visible' => true,
'backend' => 'eav/entity_attribute_backend_array',
'frontend' => '',
'label' => 'Random label',
'note' => '',
'input' => 'multiselect',
'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_WEBSITE,
'option' => array (
'values' => array(
'1' => 'Low',
'2' => 'Medium',
'3' => 'High',
'4' => 'Unlimited'
)
),
'visible' => true,
'required' => false,
'user_defined' => true,
'default' => 0,
'visible_on_front' => false,
'used_in_product_listing' => false,
'unique' => false
));
对于那些没有立即看到它的人,您基本上只需要更改给“选项”键的价值:
'option' => array ('value' =>
array(
'one' => array("Low"),
'two' => array("Medium"),
'three' => array('High'),
'four' => array('Unlimited')
)
),
到(看看如何 价值 将ITO变成了 值):
'option' => array (
'values' => array(
'1' => 'Low',
'2' => 'Medium',
'3' => 'High',
'4' => 'Unlimited'
)
),