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

Lori
02 декабря 2020, 12:03
0
извини за назойливость. я все таки смог изменить значение weight и теперь переименовал эту графу. теперь мне нужно вывести разницу total_price и total.weight, но когда я пишу в чанке так:
{$total.cart_cost - $total.cart_weight}
то у меня выводится либо 0 либо 1. Подскажи как сделать такую простую вещь?
Артур Шевченко
02 декабря 2020, 11:41
0
{set $total = $_modx->runSnippet('pdoResources', ['parents'=>'2', 'setTotal' => '1', 'tpl' => 'tpl.pdo-more'])}
Это не работает, не знаю почему, проще написать свой модификатор, который будет возвращать количество дочерних элементов типа такого назовем его getCountRes
return count($modx->getCollection('modResource', array('parent' => $parent)));
В шаблоне
{set $total = $_modx->runSnippet('getCountRes', ['parent'=>'2'])}
{if $_modx->resource.menuindex < $total - 3}
{set $offset = $_modx->resource.menuindex}
{else}
{set $offset = 0}
{/if}
{'!pdoResources' | snippet:[
'parents'=>2,
'limit'=>3,
'depth'=>10,
'tpl'=>'tpl.pdo-more',
'includeTVs'=>'global-video,img',
'resources'=>'-'~$_modx->resource.id,
'sortby'=>'publishedon',
'sortdir'=>'DESC',
'offset'=>$offset
]}
Владислав
02 декабря 2020, 11:21
0
Сейчас вот так вставляю в шаблон страницы:
{set $total = $_modx->runSnippet('pdoResources', ['parents'=>'2', 'setTotal' => '1', 'tpl' => 'tpl.pdo-more'])}
{if $_modx->resource.menuindex < $total — 3}
{set $offset = $_modx->resource.menuindex}
{else}
{set $offset = 0}
{/if}
Владислав
02 декабря 2020, 11:20
0
Я понимаю, но Ваш код вызова не работает, я уже все параметры fenom Включил
Lori
02 декабря 2020, 11:18
0
да, на вкладке элементы, галочку давно поставил
Артур Шевченко
02 декабря 2020, 11:16
0
обычный вызов не понимает что ты ему переменную передаешь.
Артур Шевченко
02 декабря 2020, 11:16
0
Это логично, надо через fenom вызывать.
Артур Шевченко
02 декабря 2020, 11:15
0
Я только что всё проверил всё работает. Ты плагин создавал в админке на вкладке элементы? Вот тут галочку поставил yadi.sk/i/xsqoAy8g1mG2LA?
Владислав
02 декабря 2020, 11:09
0
обычный вызов через [[! ]] — работает, а это нет :(
Владислав
02 декабря 2020, 11:06
0
{set $total = $_modx->runSnippet('pdoResources', ['parents'=>'2', 'setTotal' => 1, 'tpl' => '@INLINE {$total}'])}
Это раздельно? — да
{if $_modx->resource.menuindex < $total — 3}
{set $offset = $_modx->resource.menuindex}
{else}
{set $offset = 0}
{/if}
Алексей Шумаев
02 декабря 2020, 11:06
0
Есть предложение: добавить в компонент возможность прописывать строку поиска для использования с forceSearch.
Тогда можно будет в настройках указывать не только фильтры, но и поисковую строку для совершенно различных подборок.
+100 к организации маркетинговых акций (особенно на сайтах, где прямо сейчас нет нужного маркетологам фильтра). Проверено.
Владислав
02 декабря 2020, 11:05
0
Создать новый плагин и в него поместить этот код?
Артур Шевченко
02 декабря 2020, 11:05
0
Отдельно total и offset пробовал выводить?
Владислав
02 декабря 2020, 11:04
0
а вызывать как?
Lori
02 декабря 2020, 11:03
0
ладно друг, спасибо большое за уделенное время, но видимо я все таки не справлюсь с этой задачей. Сделал все, в логе только «Невозможно запустить функцию mail», пробовал выводить и на фронте. Заказ в админке появляется но со старыми ценами. Плагина код:
<?php
switch ($modx->event->name) {
        case 'msOnChangeInCart':
            $modx->log(1, print_r($_POST,1,'HTML'));
            $tmp = $cart->get();
            $modx->log(1, print_r($tmp,1,'HTML')); 
            $tmp[$key]['price'] = $_POST['price2'];
            $cart->set($tmp);
         break;
}
Форма на сайте
<form method="post" class="ms2_form" role="form">
                                <input type="hidden" name="key" value="{$product.key}"/>
                                <div class="form-group">
                                    <div class="input-group input-group-sm">
                                        <input type="number" name="price2" value="" class="form-control"/>
                                        <div class="input-group-append">
                                            <span class="input-group-text">{'ms2_frontend_currency' | lexicon}</span>
                                        </div>
                                    </div>
                                    <button class="btn btn-sm" type="submit" name="ms2_action" value="cart/change">↻</button>
                                </div>
                            </form>
Артур Шевченко
02 декабря 2020, 11:02
0
Пардон, туплю
Владислав
02 декабря 2020, 10:58
0
Он не работает, просто нечего вообще не выводит. Как будто его и нет, хотя в настройках стоит «Использовать Fenom на страницах и в чанках»
Андрей
02 декабря 2020, 10:57
0
Реально ли при помощи mSearch2 или какого-то другого пакета для miniShop2 реализовать подобное?
Подобное можно сделать через — SeoFilter. Подробнее на странице компонента, там же есть ссылка на демонстрацию возможностей.
Евгений Лазарев
02 декабря 2020, 10:54
+1
Лишнее удалите чего у Вас нет. У меня добавлены собственные поля в minishop2 через систему плагинов.