Всего 125 679 комментариев

Николай Савин
04 февраля 2021, 19:22
0
Я бы кстати и здесь вопросы почистил. Удалить к примеру те что без ответа и срок давности хотя бы два года.
А то висят мертвым грузом
Андрей
04 февраля 2021, 19:11
0
Ставил бОльший приоритет. И штука в том что в одном коде одна часть товаров нормально работает:
$products = $modx->getObject('msProduct', $product->get('id'));
	

    		if ($products->get('parent') == $plamgasCatsId) {
    			
    			$price_product_id = $products->get('price_id_product');
				$para = $products->get('para')[0];

    			foreach ($price_product_id as $product_id) {
					$res = $modx->getObject('msProduct',$product_id);
						if ($res) {
							$price_sostav = $res->get('price');
							$price_sum += $price_sostav;
							if ($para[0] == 1) {
								$price_sum = $price_sum*2;
							}
						}
				}
				
				$price_sale = $price_sum * 0.95;
    			$product->set('price', $price_sale);
				//$product->set('price', $price_sum);

    			
    		}
А другая часть, которая должна применять скидку к товарам одной категории — не работает

else {
    			
    				$pids = $modx->getParentIds($products->get('id'), 10, array('context' => 'web'));
	    			if (in_array($target, $pids)) {
	    				$price_sale = $product->get('price') * 0.95;
	    			}
	    		
    		}
    		
    		$product->set('price', $price_sale);
Евгений Webinmd
04 февраля 2021, 19:03
0
там есть такая штука как приоритет плагинов, поиграйте там со значениями, чтобы ваш плагин срабатывал после msOptionPrice
Андрей
04 февраля 2021, 18:55
0
Добавил такие строки:
$returned_values = & $modx->event->returnedValues;
$values =  $modx->event->params['data'];
$returned_values['price'] = $price_sale;
все равно не меняет ценник.
Я тут плагины поотключал и выяснил что при отключении плагина msOptionPrice все работает. Но вот где он ценник перебивает ума не приложу
Евгений Webinmd
04 февраля 2021, 18:44
0
а, точно, заработался, но если попробовать $returned_values = & $modx->event->returnedValues; вот это впихнуть в твой вариант?
Андрей
04 февраля 2021, 18:39
0
А так он меняет ценник в самой карточке товара, а нужно чтобы в корзине при добавлении
Евгений Webinmd
04 февраля 2021, 18:31
0
а если так:
case 'msOnGetProductPrice': 
          $returned_values = & $modx->event->returnedValues;
          $values =  $modx->event->params['data'];
           $returned_values['price'] = 300;
        break;
Евгений Webinmd
04 февраля 2021, 18:24
1
+3
$usergroup = 2; // id группы Users 
$c = $modx->newQuery('modUser');
$c->innerJoin ('modUserGroupMember','UserGroupMembers');
$c->where(array(
'active' => true,
'UserGroupMembers.user_group' => $usergroup
));

$count = $modx->getCount('modUser', $c);

echo $count;
Mandarins
04 февраля 2021, 18:09
0
Чтоб вывести как в меню можно использовать &sortby=`{«menuindex»:«ASC»}`
[[!pdoPage?
            &parents=`[[+id]]`
            &depth=`0`
            &tpl=`glav_katalog_kategorei`
            &limit=`6`
            &sortby=`{"menuindex":"ASC"}`
]]
может кому то пригодится )
Андрей
04 февраля 2021, 16:40
0
Масса вопросов даже тут не решенных… точно не до Тостера, тут бы все решить
Андрей
04 февраля 2021, 16:39
0
Выяснилось что вообще никаким товарам цен не меняется кроме одной категории…
Почему-то не работает лаже скрипт из документации
case 'msOnBeforeAddToCart':
    $product->set('price', 5555);
    break;
Как выяснить причину?
Василий
04 февраля 2021, 16:15
0
Тоже долго искал решение, в итоге сделал, чтобы при сохранении ресурса проверялось значение и если оно совпадает со значением по-умолчанию, принудительно его прописать в этом ресурсе. Значение пробрасывается в базу и тогда фильтрация работает нормально.
Артур Шевченко
04 февраля 2021, 14:26
-1
Ну как вариант использовать msAddFields для расширения модели товара, эти поля отображаются там где вам нужно.
Павел Гвоздь
04 февраля 2021, 11:51
0
Можно. Только своими силами. Там сделать это в несколько строк кода можно.
Виталий
04 февраля 2021, 10:25
0
Павел, добрый день. подскажите, можно ли выводить сумму бонусов при покупке товара еще не авторизованному пользователю? примерно так. в документации не нашел информации. спасибо
Артур Шевченко
04 февраля 2021, 00:23
0
Напишу им.
Артур Шевченко
04 февраля 2021, 00:22
0
Мне был нужен, но я не догадался поискать готовые решения. И придуманный мной костыль не догадался сюда написать, слава богу, а то вдруг бы ты увидел)))
Pavel Zarubin
04 февраля 2021, 00:11
0
Статья 2017 года, 4 года уже прошло, я думаю если бы этот функционал был кому то нужен, его бы уже 10 раз пофиксили)