@aljo222
В процессе обучения веб-разработке

Как изменить цену всех товаров из определенной категории в minishop2?

Здравствуйте, нужно изменить массово цены на все товары из категории с id 24.
Цену увеличить на 8%?
$product = $modx->getObject('msProduct', тут id);
$oldPrice = $product->get('price');
$product->set('price', $oldPrice  + $oldPrice*0.08);


Правильный ли код это для одного товара? А как написать для всех из одной категории?
Мне подсказали, что можно выполнить скрипт в console.

Заранее спасибо!
  • Вопрос задан
  • 630 просмотров
Решения вопроса 1
an-tar
@an-tar Куратор тега MODX
Full stack web developer
$query = $modx->newQuery('msProduct');
$query->limit(10000);
$query->where(array(
    'parent' => 4, // тут ID категории
));
$docs = $modx->getCollection('msProduct',$query);
foreach($docs as $doc){
    $oldPrice = $doc->get('price');
    $doc->set('price', $oldPrice  + $oldPrice*0.08);
    $doc->save();
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы