Есть возможность добавить свойство всем существующим товарам в битрикс через админку?
Смысл этого в том, чтобы задать свойство, которое нигде не будет использоваться, кроме как в выгрузке для ЯМ. Фактически текстовое значение.
Также, чтобы это свойство добавлялось автоматически к новым товарам.
1. Создай доп. свойство
2. Скриптом пробеги по всем товарам и присвой нужное значение или открой по очереди все товары и просто сохрани.
(Новым товарам свойство будет добавляться автоматом.)
alex-1917 Боюсь, качественный скрипт не смогу сделать, так как в него надо будет встраивать работу с бд. А куда именно сохранет битра в разные места бд это свойство, я без детального понятия.
armodim, не слушай VicTHOR - используй SetPropertyValuesEx
Если в update не передашь значение всех свойств - то они сбросятся. А передавать их может быть муторно.
Нет причин в общем случае использовать update для обновления свойств, если ты не хочешь обновить все свойства.
armodim, Маджугин дело говорит!
Получаешь массив товаров CIBlockElement::GetList
Затем внутри цикла по этому массиву:
//$ID - id товара
//$value - значение свойства
function upd_val($value, $ID){
$PROPERTY_CODE = "YA_SUPER_CODE"; // код свойства
CIBlockElement::SetPropertyValuesEx($ID, false, array($PROPERTY_CODE => $value));
}
Для того чтобы новым элементам простовлялось свойство:
При создании доп. свойства укажите ему значение умолчанию.
Для существующих элементов - увы, не обойтись без скрипта.
Как писали выше, используйте CIBlockElement::SetPropertyValuesEx