Создайте атрибут категории в скрипте установки

#php #magento

#php #magento

Вопрос:

Я хочу добавить новый атрибут в категорию и обновить его значение по умолчанию для всех созданных категорий.

Мой код :

 $installer = $this;
$installer->startSetup();

$installer->addAttribute(Mage_Catalog_Model_Category::ENTITY, 'include_in_parent_navigation', array(
    'group'         => 'General Information',
    'input'         => 'select',
    'type'          => 'int',
    'source'        => 'eav/entity_attribute_source_boolean',
    'label'         => 'Include in Parent Navigation',
    'required'      => 0,
    'unique'        => 0,
    'sort_order'    => 11,
    'user_defined'  => 1,
    'default'       => 1,
    'global'        => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE,
));

$_categories = Mage::getModel('catalog/category')
    ->getCollection();
foreach($_categories as $category) {
    $category->setData('include_in_parent_navigation', 1);
    $category->save();
}
$installer->endSetup();
 

Он добавляет новый атрибут, но не обновляет существующие категории.

Комментарии:

1. вы пробовали ссылку ниже. inchoo.net/magento /…

Ответ №1:

 use this below code 

$_categories = Mage::getModel('catalog/category')
    ->getCollection();
foreach($_categories as $category) {
    $cat=Mage::getModel('catalog/category')->load($category->getId());
    $cat->setData('include_in_parent_navigation', 1);
    $cat->save();
}