Павел Романов

Павел Романов

С нами с 03 марта 2014; Место в рейтинге пользователей: #36
12 ноября 2016, 15:35
0
Обновите компонент — эту ошибку пофиксили еще в версии 2.2.10.
11 ноября 2016, 15:19
0
Попробуйте так:
<div class="row">
	[[!pdoPage?
	&tpl=`card`
	&tpl_n3=`card3`
	&limit=`12`
	...........
	]]
</div>

Чанк card простой, а в чанке card3 в конце так:
</div>
<div class="row">
11 ноября 2016, 13:07
0
Используйте параметры &tpl_nN, &tplFirst и &tplLast.

В чанке, указанном в &tpl_n3 и &tplLast в конце добавьте:
</div>

В чанке, указанном в &tpl_n4 и &tplFirst в начале добавьте:
<div class="row">
10 ноября 2016, 19:10
1
+1
В FormIt есть хук FormItSaveForm. Он пишет отправленные данные в базу. Также есть компонент, который их оттуда выводит (ставится автоматом с FormIt) с функцией выгрузки в CSV.
10 ноября 2016, 12:45
1
0
Если дело в индексации, то пропишите просто в head:
<link rel="canonical" href="[[~[[*id]]? &scheme=`full`]]"/>
09 ноября 2016, 20:03
0
Очистите таблицу modx_session через phpMyAdmin, к примеру.
09 ноября 2016, 16:15
+1
Используйте number_format.
Для вывода на сайте можете сделать сниппет-модификатор nformat:
return number_format($input, 0, '', ' ');

и использовать:
[[*price:nformat]]

Если нужно округление, то round.
09 ноября 2016, 15:49
+1
Ошибся. А так?
<?php
$rate = 63; //тут курс
$output = 0;
$price_tv_name = 'price'; //Имя TV цены
$action_price_tv_name = 'action_price'; //Имя акционной TV цены

    $p_id = isset($purchaseArray['shk-id']) && is_numeric($purchaseArray['shk-id']) ? $purchaseArray['shk-id'] : 0;
    if($p_id){
	$action_tv = $modx->getObject('modTemplateVar',array('name'=>'action'));
	$action = $action_tv->renderOutput($p_id);
        if (!empty ($action)) {
            $action_price_tv = $modx->getObject('modTemplateVar',array('name'=>$action_price_tv_name));
            $price_usd = $action_price_tv->renderOutput($p_id);
        } else {
            $price_tv = $modx->getObject('modTemplateVar',array('name'=>$price_tv_name));
            $price_usd = $price_tv->renderOutput($p_id);
        }
        $output = $price_usd * $rate;
    }
$modx->event->_output = '';
$modx->event->output($output);

return '';
09 ноября 2016, 14:22
+1
Попробуйте так:
<?php
$rate = 63; //тут курс
$output = 0;
$price_tv_name = 'price'; //Имя TV цены
$action_price_tv_name = 'action_price'; //Имя акционной TV цены

    $p_id = isset($purchaseArray['shk-id']) && is_numeric($purchaseArray['shk-id']) ? $purchaseArray['shk-id'] : 0;
    if($p_id){
	$action_tv = $modx->getObject('modTemplateVar',array('name'=>'action'));
	$action = $action->renderOutput($p_id);
        if (!empty ($action)) {
            $action_price_tv = $modx->getObject('modTemplateVar',array('name'=>$action_price_tv_name));
            $price_usd = $action_price_tv->renderOutput($p_id);
        } else {
            $price_tv = $modx->getObject('modTemplateVar',array('name'=>$price_tv_name));
            $price_usd = $price_tv->renderOutput($p_id);
        }
        $output = $price_usd * $rate;
    }
$modx->event->_output = '';
$modx->event->output($output);

return '';
03 ноября 2016, 16:55
0
Готовый — mFilter2 (из mSearch2).
Параметры тут: docs.modx.pro/components/msearch2/snippets/mfilter2
Просто делаете форму с нужными полями и передаете на страницу с результатами данные из неё GET-запросом.
А на самой странице результатов уже штатная форма фильтрации.
03 ноября 2016, 16:45
0
Можно просто на pdoResources.
Все параметры объектов забиваете в TV. Делаете сниппет Filter, который будет ловить GET-параметры и формировать строку с отбором по TV:
&tvFilters=`tv1==%***%,price<*** ....................`

Выводите на странице результатов его прямо в параметрах pdoResources:
[[pdoResources?
.........
[[!Filter]]
]]
31 октября 2016, 15:23
0
У плагина на вкладке «Системные события» отметьте галочкой OnSHKgetProductPrice.

Но плагин не меняет цену на странице товара — от просто пересчитывает ее, когда происходит добавление в корзину. Для того, чтобы выводить цену, создайте сниппет getprice:

<?php
$rate = 63; // курс
return $input * $rate;

И выводите в чанках:
[[+tv.price:getprice:num_format]]

На странице товара:
[[*price:getprice:num_format]]
31 октября 2016, 14:27
0
Попробуйте сделать плагин на событие OnSHKgetProductPrice

<?php
$rate = 63; //тут курс
$output = 0;
$price_tv_name = 'price'; //Имя TV цены
    $p_id = isset($purchaseArray['shk-id']) && is_numeric($purchaseArray['shk-id']) ? $purchaseArray['shk-id'] : 0;
    if($p_id){
        $price_tv = $modx->getObject('modTemplateVar',array('name'=>$price_tv_name));
        $price_usd = $price_tv->renderOutput($p_id);
	$output = $price_usd * $rate;
    }
$modx->event->_output = '';
$modx->event->output($output);

return '';
31 октября 2016, 11:48
+7
По поводу тся и ться есть очень простое правило:
Если слово отвечает на вопрос, в котором нет мягкого знака, то он и не пишется.
Если в самом вопросе есть мягкий знак, то и в слове он ставится.

Например:
Стараться (что делатЬ?), соответственно, пишем.
Ставится (что делает?) нет Ь, вот и не пишем.
07 октября 2016, 19:57
+1
Если без какого-то особого функционала, то можно использовать стандартные хуки FormIt: FormItAutoResponder и FormItSaveForm.
Там «из коробки» есть фильтрация по имени формы, датам и экспорт в CSV.
03 октября 2016, 09:58
0
Чанк descResourseTpl точно есть?
29 сентября 2016, 20:06
0
Если TV с картинкой называется wsimages, то так:
[[pdoResources?
&parents=`[[*id]]`
&tpl=`sl_img`  
&includeTVs=`wsimages`
]]

В чанке sl_img путь к картинке, соответственно,
[[+tv.wsimages]]
28 сентября 2016, 23:10
+3
В документации есть нечто подобное.
27 сентября 2016, 16:41
2
+1
Поправочка (всё-таки ошибся))):

{var $av = $_pls['tv.aviable']}
{if $av == 0}
	Нет в наличии
{else}
	{if $av > 1 && $av < 10}
		<i class="fa fa-circle"></i>
	{else}
		{if $av >= 10 && $av < 30}
			<i class="fa fa-circle"></i> <i class="fa fa-circle"></i>
		{else}
			{if $av >= 30}
				<i class="fa fa-circle"></i> <i class="fa fa-circle"></i> <i class="fa fa-circle"></i>
			{/if}
		{/if}
	{/if}
{/if}