Значение атрибута по умолчанию для всего продукта в magento - PullRequest
3 голосов
/ 05 февраля 2011

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

Ответы [ 4 ]

5 голосов
/ 26 июля 2013

Раньше у меня была такая же проблема, когда я добавил 11096 товаров (загружаемых товаров) в свой магазин, тогда клиент сказал мне добавить новые атрибуты в товар, поэтому я создал 1 атрибут (Тип - Да / Нет) и установил набор атрибутов.Теперь моя проблема заключается в том, как я могу отредактировать весь товар и установить для этого атрибута значение да или нет. Если я не установлен, тогда значение равно нулю, поэтому я написал несколько строчных кодов.

Пожалуйста, проверьте этот код, возможно, он будет полезен дляВы.

$ProductId = Mage::getResourceModel('catalog/product_collection')
    ->addAttributeToFilter('type_id', Mage_Downloadable_Model_Product_Type::TYPE_DOWNLOADABLE)
    ->getAllIds();
//Now create an array of attribute_code => values

$attributeData = array("my_attribute_code" =>"my_attribute_value");

//Set the store to affect. I used admin to change all default values

$storeId = 0; 

//Now Update the attribute for the given products.

Mage::getSingleton('catalog/product_action')
    ->updateAttributes($ProductId, $attributeData, $storeId);
3 голосов
/ 29 августа 2012

Как указано здесь: - http://www.magentocommerce.com/knowledge-base/entry/tutorial-creating-attributes-custom-fields

Значение по умолчанию: Вы можете ввести значение, которое будет автоматически заполняться для новых продуктов.

Итак, я думаю, что это применимо только к новым продуктам, которые вы создаете после создания этого атрибута. Следовательно, настройка значения атрибута по умолчанию может не применяться к тем продуктам, которые были созданы до создания атрибута.

У меня была похожая проблема, и для ее решения я написал следующий код в файле, где я хочу отобразить значение атрибута по умолчанию: -

$attributeCode = 'YOUR_ATTRIBUTE_CODE';
$attribute = Mage::getResourceModel('eav/entity_attribute_collection')
            ->setCodeFilter($attributeCode)
            ->getFirstItem();
echo $attribute->getDefaultValue();
0 голосов
/ 13 апреля 2016

enter image description here

Вы также можете решить проблему, выполнив массовое обновление для всех продуктов.Перейдите на страницу «Управление продуктами» и выберите «Все», а затем «Обновить атрибуты».

0 голосов
/ 05 февраля 2011

Вы можете сделать это в управлении атрибутами

Панель администратора - Каталог - Атрибуты - Управление атрибутами

Выбрать атрибут - Свойства - Свойства атрибута - Значение по умолчанию

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...