Массовое добавление/удаление модификаций (msOptionPrice2)
Вообще @Володя уже давал эти скрипты в комменте, но я вечно их ищу в своих избранных и про удаление многие не знают + слегка модернизировал удаление
Добавление модификации
Удаление модификаций
$msoptionsprice = $modx->getService('msoptionsprice');
$msoptionsprice->initialize('web');
/*
* основной артикул продукта выкидываем, он не используется
* в опции модификации идет размер
*/
$modifications = array(
array(
'price' => '100.0',
'options' => array(
'size' => '12x18',
'tkan' => 'Флажный шёлк'
)
),
array(
'price' => '120.0',
'options' => array(
'size' => '15x22',
'tkan' => 'Флажный шёлк'
)
),
array(
'price' => '175.0',
'options' => array(
'size' => '20x30',
'tkan' => 'Флажный шёлк'
)
),
);
/* id товара */
$rid = 85;
$modifications = $modx->call('msopModification', 'saveProductModification', array(&$modx, $rid, $modifications));
Удаление модификаций
for ($rid = 212; $rid <= 218; $rid++) {
$modx->removeCollection('msopModification', ['rid' => $rid]);}
этот скрипт удалит все модификации в товарах от id 212 до id 218
Поблагодарить автора
Отправить деньги
Комментарии: 1
Наверно так же можно сделать
['rid:IN' => $rids]
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.