2

我有我的模块。此模块具有安装脚本,应在其中将自定义图像字段添加到类别。

$setup->addAttribute('catalog_category', 'additional_image', array(
    'type'              => 'varchar',
    'backend'           => 'catalog/category_attribute_backend_image',
    'label'             => 'Additional Image',
    'input'             => 'image',
    'global'            => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE,
    'visible'           => 1,
    'required'          => 0,
    'user_defined'      => 0,
    'default'           => '',
    'position'          => 6,
));

之后,它必须更改其他图像字段(图像、缩略图)的标题。我怎样才能得到这个系统的字段并改变它们?

4

2 回答 2

4

您可以使用Mage_Eav_Model_Entity_Setup::updateAttribute()方法来执行此操作。

于 2012-06-22T13:49:52.093 回答
1

这是一个很长的路要走,但其他人可能需要这些信息。

Mage_Eav_Model_Entity_Setup::updateAttribute() 

有 5 个参数,其中 3 个是必需的。

我将使用自定义客户属性的示例:

$entityTypeId = 'customer'
$id = 'my_custom_attribute_code'
$field = 'is_used_for_customer_segment'
$value = '1'
$sortOrder = Not Needed

如您所见,我正在使用客户实体来更新属性。我正在使用属性 id(代码)my_custom_attribute_code 更新我的自定义属性。我正在更新的此属性中的字段是 is_used_for_customer_segment 并将值设置为 yes(1)。

以下是如何将其作为更新执行的示例。

$installer->startSetup();

$installer->updateAttribute('customer', 'my_custom_attribute_code', 'is_used_for_customer_segment', '1');

$installer->endSetup();
于 2014-03-06T20:15:14.733 回答