Андрей

Андрей

С нами с 22 сентября 2014; Место в рейтинге пользователей: #169

Пустой description в выгрузке msYmarket

Добрый день. Скажите, у меня если поле, которое должно идти в тег description пустое, то и самого тега нет в выгрузке. Из-за этого не проходит валидация. Можно ли тег чтобы был независимо от пустоты данных, пусть он будет, но пустой.
Как это сделать?
Андрей
02 марта 2021, 13:52
modx.pro
335
0

Получить модификации опции в pdoResources

Добрый день.

Модно ли каким-то образом получить модификации продукта определённой опции в вызове pdoResources?
Пытался через LeftJoin, но никак не получилось…

{'!pdoResources' | snippet : [
    'class' => 'msProduct',
    'where' => [
    	"parent" => 3015,
    	"class_key" => "msProduct",
	],
    'limit' => 1,
    'leftJoin' => [
    	"Mods" => [
                "class" => "msopModification",
                "on" => "Mods.rid = msProduct.id"
            ]
    ],
    'select' => '{
    	"Mods": "*",
        "msProduct": "id,parent,pagetitle",
    }',
    'showLog' => 1,
    'tpl' => '',
]}
Помогите пожалуйста.
Андрей
04 февраля 2021, 22:21
modx.pro
528
0

Почему-то не работает плагин на msOnBeforeAddToCart

Добрый день.
Пишу плагин который дает 5% скидки на определенную группу товаров. Вешаю его на событие msOnBeforeAddToCart.
В результате одна часть работает, вторая нет… хотя через print_r выводит верную цену, но в корзину все равно попадает цена без скидки… Помогите почему так происходит

<?php
$plamgasCatsId = 10535;
$target = 6;

switch ($modx->event->name) {
	
	case 'msOnBeforeAddToCart':
    
	$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 = $products->get('price') * 0.95;
// Вот эта строка не работает, все остальное работает корректно.
	    			$product->set('price', $price_sale);
	    		}
	    		
    		}
    		
    		
    
    break;
    
}
Андрей
04 февраля 2021, 15:07
modx.pro
568
0

Перегенерация всех фото товаров с ошибками

Добрый день.
Пытаюсь перегенерировать все фото товаров сайта (порядка 3000 позиций) через скрипт из документации.
Запускаю через консоль и он во-первых работает очень долго (порядка 12 часов), во-вторых заканчивается множественными ошибками. Вот выдержка из логов:
batyam@oscar1:~/ [0] $ tail -n 20 PHP_errors.log
#2 /core/model/modx/modx.class.php(1764): modProcessor->run()
#3 /core/model/modx/modconnectorresponse.class.php(144): modX->runProcessor('exec', Array, Array)
#4 /core/model/modx/modconnectorrequest.class.php(86): modConnectorResponse->outputContent(Array)
#5 /core/model/modx/modconnectorrequest.class.php(73): modConnectorRequest->prepareResponse(Array)
#6 /manager/components/console/connectors/console.php(11): modConnectorRequest->handleRequest(Array)
#7 {main}
thrown in /core/components/console/processors/exec.class.php(24): eval()'d code on line 14
[23-Jan-2021 06:25:14 UTC] PHP Fatal error: Uncaught Error: Call to a member function get() on null in /core/model/modx/modtemplatevar.class.php:303
Андрей
01 февраля 2021, 22:04
modx.pro
1
657
0

Ссылка на оплату mspYaCassa

Добрый день.
Подскажите, как отправить пользователю ссылку на оплату при формировании заказа, если оплата выбрана через компонент mspYaCassa?
Допустим пользователь сразу не оплатил заказ и его можно было бы вернуть по этой ссылке на оплату.
Андрей
30 января 2021, 13:44
modx.pro
347
0

исправить плагин на события корзины

1 200
Добрый день.

Нужно дописать плагин на события добавления в корзину и ее обновления

Часть товаров имеет цену, формирующуюся из 1 или двух других товаров.
При добавлении в корзину нужно изменить им цену на верную.
Процентов на 95 написано, все данные получаются, но не корректно сохраняются в корзине. Первый товар правильно, второй уже складывает плюс первый и т.д.

Нужно исправить эту проблему.
Андрей
15 января 2021, 20:42
modx.pro
295
0

Localizator и TVTable

Добрый день.
Подскажите, как получить локализованные значения из TV поля через сниппет TVTable?
Можно как-то их завязать между собой?
Андрей
07 января 2021, 15:05
modx.pro
288
0

Не фильтрует товары, не отображает количество товаров с опцией

Добрый день.
Почему то не отображается количество товаров рядом с опицей, а также не прибавляется атрибут disable рядом с неактивными опциями.
С чем может быть связано?
mFilter2
tuning-hall.com/catalog/vykhlopnaya-sistema/plamegasiteli-po-modelyam-avtomobilej/
Андрей
22 ноября 2020, 14:47
modx.pro
331
0

Связанные опции

1 500
Добрый день.
Есть 2 опции: марка авто и модель авто.
Нужно чтобы в списке опции модель при выборе марки оставались только те модели, которые принадлежат данной марке.
Андрей
21 ноября 2020, 21:27
modx.pro
269
0

Не считает калькулятор

1 500
Добрый день. Почему-то не считает калькулятор модификаций.
В консоли ошибки:
default.js?v=d62e73368c:598 Uncaught TypeError: Cannot read property '0' of null
    at Object.formatPrice (default.js?v=d62e73368c:598)
    at Object.msal.calculatePrice (default.js:66)
    at default.js:74
    at dispatch (jquery.min.js:3)
    at r.handle (jquery.min.js:3)
такая:
Uncaught TypeError: Cannot read property '0' of null
    at Object.formatPrice (default.js?v=d62e73368c:598)
    at Object.formatOptionValue (_default.js?v=89fcff37:833)
    at Object.setValue (_default.js?v=89fcff37:746)
    at _default.js?v=89fcff37:423
    at Array.filter (<anonymous>)
    at Object.success (_default.js?v=89fcff37:405)
    at i (jquery.min.js:2)
    at Object.fireWith [as resolveWith] (jquery.min.js:2)
    at z (jquery.min.js:4)
    at XMLHttpRequest.<anonymous> (jquery.min.js:4)
Андрей
01 августа 2020, 12:07
modx.pro
320
0