Как создать скидку для товаров с опред брендом в msDiscount ?
Есть список брендов, бред указан в опциях товара, как сделать именно для них скидку через msDiscount?
Код ниже уже готовый, вопрос решён. Нужно будет вам создать ваши бренды в группе ресурсов обязательно указать все контексты, затем записать их в словарь как ниже, и всё это запустить в пакете под названием «Консоль»
При условии что у вас бренд как у меня находится в опции товара, если нет то код ниже нужно будет переделать а именно первую часть с поиском опции.
Код ниже уже готовый, вопрос решён. Нужно будет вам создать ваши бренды в группе ресурсов обязательно указать все контексты, затем записать их в словарь как ниже, и всё это запустить в пакете под названием «Консоль»
При условии что у вас бренд как у меня находится в опции товара, если нет то код ниже нужно будет переделать а именно первую часть с поиском опции.
<?php
$brensList = array('NOMAD','Dominator','АкТех','Kainar');
$q=$modx->newQuery('msProductOption', array('key:=' => 'brand', 'value:IN' => $brensList));
$q->prepare();
$q->stmt->execute();
$res = $q->stmt->fetchAll(PDO::FETCH_ASSOC);
$brendsGroups = array(
'NOMAD' => 79,
'Dominator' => 80,
'АкТех' => 81,
'Kainar' => 82
);
$productWithoutGroup = 103; // Айди группы ресурсов что нет в списке выше.
foreach ($res as $k => $v) {
$currentProductBrand = $v['msProductOption_value'];
$docId = $v['msProductOption_product_id'];
$newGroup = $brendsGroups[$currentProductBrand];
if(!$newGroup){
$newGroup = $productWithoutGroup;
}
$resource = $modx->getObject('modResource', $docId);
if($resource){
if(!$resource->isMember($newGroup)){
$resource->joinGroup($newGroup);
}
}
}
Техническая поддержка MODX
Сайт лежит, тормозит или остался без разработчика?
Переезд с MODX 2 на 3, PHP 7 на 8, скорость и безопасность. Поддержка со сроками и ответственностью, а не совет в чате.
Подробнее
Реклама
2
Комментарии: 2