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

Giant Dad
20 декабря 2021, 16:28
0
Сниппет mFilter2, вот такой вызов
{'!mFilter2' | snippet : [
                'element'=>'msProducts',
                'class'=>'msProduct',
                'tplOuter'=>'tpl_mfilter_outer.tpl',
                'tpl'=>'tpl.product.row.custom2',
                'limit'=>'12',
                'sort'=>'resource|menuindex:asc',
                'showEmptyFilters'=>'false',
                'filters'=>'
        				msoption|dlina:number,
        				msoption|karmany:number,
        				msoption|razmer:default,
                        msoption|sezon:default'
        	    'aliases'=>'
        				msoption|dlina==dlina,
        				msoption|karmany==karmany,
        				msoption|razmer==razmer,
                        msoption|sezon==sezon',
                'parents'=>$_modx->resource.id,
                'tplPageWrapper'=>'@INLINE <ul id="mse2_pagination" class="pagination">{$first}{$prev}{$pages}{$next}{$last}</ul>',
                'tplPageActive'      => '@INLINE <li class="active"><a href="{$href}">{$pageNo}</a></li>',
                'tplPageFirst'	    => '@INLINE <li class="control"><a href="{$href}">«</a></li>',
                'tplPageLast'	    => '@INLINE <li class="control"><a href="{$href}">»</a></li>',
                'tplPagePrev'	    => '@INLINE <li class="control"><a href="{$href}">‹</a></li>',
                'tplPageNext'	    => '@INLINE <li class="control"><a href="{$href}">›</a></li>',
                'tplPageSkip'	    => '@INLINE <li class="disabled"><span>...</span></li>',
                'tplPageFirstEmpty'	=> '@INLINE <li class="control"><span>«</span></li>',
                'tplPageLastEmpty'	=> '@INLINE <li class="control"><span>»</span></li>',
                'tplPagePrevEmpty'	=> '@INLINE <li class="disabled"><span>‹</span></li>',
                'tplPageNextEmpty'	=> '@INLINE <li class="disabled"><span>›</span></li>',
                'includeTVs'=>'catalog_hide',
                'where'=>'{"catalog_hide:IS": null}'
                'sortby' => 'CASE `Data`.`vendor` WHEN 7 THEN 1 ELSE 0 END ASC, msProduct.id',
            ]}
Я не очень хорошо разбираюсь в сортировке. Если можно, подскажите хотя бы куда смотреть, что читать. Какие-то примеры…
Тодор
20 декабря 2021, 16:24
0
Что именно не помогоает? Єто общий принцип как именно можна ето сделать. Дальше все зависит от того, к какому снипету ето надо прикрутить и поддержывает ли етот снипет такие параметры
Giant Dad
20 декабря 2021, 16:19
0
Вместо __VENDOR__ID__ же нужно подставить id из таблицы modx_ms2_vendors? Если да, то не помогает
Тодор
20 декабря 2021, 15:03
+1
'sortby' => 'CASE `Data`.`vendor` WHEN __VENDOR__ID__ THEN 1 ELSE 0 END ASC, msProduct.id',
Баха Волков
20 декабря 2021, 14:39
+1
Если речь идёт о доступе к странице, то правильный подход будет через контроль доступа и группы ресурсов
Павел Гвоздь
20 декабря 2021, 12:02
+1
Тут как минимум вопросы нужно задавать в ТП на Modstore. А вообще, этой совместимости в описании компонента не заявлено, поэтому это платная доработка. И есть у меня подозрение, что решение надо писать на стороне второго компонента.
Sergey (Sentinel)
20 декабря 2021, 11:34
0
Т.к. это платный компонент, думаю решений нет ни у кого. И пока у автора тоже :(((
Рушан
20 декабря 2021, 08:34
0
Спасибо!
Николай Савин
20 декабря 2021, 08:30
+2
ms3 будет в Январе. Ну и еще останется экосистему к нему подтягивать.
Евгений Webinmd
19 декабря 2021, 22:37
+1
ismember (memberof, mo) — проверка принадлежности пользователя к группе или группам пользователей MODX. Если переменная пуста, то проверка проводится для текущего пользователя.

{1 | ismember : 'Administrator'} // true
{0 | ismember : ['Administrator', 'Manager']}

Документация
Иван Бочкарев
19 декабря 2021, 22:18
+1
По факту если не нужен e-commerce не хватает только MIGX
Серый
19 декабря 2021, 20:42
0
Увы, не спасает. Если без &toPlaceholder=`qq`, то всё выводится корректно, если задействую его, то какая-то флюктуация начинается((
Евгений Webinmd
19 декабря 2021, 20:25
0
попробуйте добавить
&resources=`[[+tv.soloistsList:default=`-0`]]`
вместо -0 можно попробовать 999999999999
Серый
19 декабря 2021, 20:21
0
Кажется дошло, работает, сделал так:
[[+total:isequal=`1`:then=`Soloist`:else=`Soloists`]]:
[[+tv.soloistsList:notempty=`[[+qq]]`:empty=`TBC`]]
[[pdoResources?
    &parents=`8`
    &resources=`[[+tv.soloistsList]]`
    &sortdir=`ASC`
    &limit=`10`
    &tpl=`soloistsListTPL`                  
    &includeTVs=`simpleText`
    &showUnpublished=`1`
    &processTVs=`1`
    &prepareTVs=`1`
    &setTotal=`1`
    &toPlaceholder=`qq`
]]
Это код карточки концертов, они другим снипетом выводятся на страницу списком и вот грабли — одна из них почему-то показывает тупо всех солистов сколько допускает параметр &limit.
Убираю из этого концерта солистов — подставляет TBC, и эта фигня вылезает в другой карточке.
Что ж я делаю не так?(
Евгений Webinmd
19 декабря 2021, 19:40
0
[[!pdoResources?
        &parents=`8`
        &resources=`[[+tv.soloistsList]]`
        &processTVs=`1`
        &prepareTVs=`1`
        &setTotal=`1`
        &tpl=`@CODE: [[+total]]`
        &toPlaceholder=`qq`
]]

Список ресурсов
[[+qq]]

Количество
[[+total]]

в tpl чанк ресурсов как обычно
Серый
19 декабря 2021, 19:33
0
Эх, как было бы прекрасно, если бы еще где-то примеры использования этих параметров были((
Тыкался так и этак — всё что угодно кроме количества даёт(
Направьте пожалуйста
[[+qq]]
[[pdoResources?
        &parents=`8`
        &resources=`[[+tv.soloistsList]]`
        &processTVs=`1`
        &prepareTVs=`1`
        &setTotal=`1`
        &tpl=`@CODE: [[+total]]`
        &toPlaceholder=`qq`
]]
Евгений Webinmd
19 декабря 2021, 00:55
0
ну тут не долго думая можно использовать 2 параметра из документации: toPlaceholders (тут будет список) и setTotal (тут будет количество результатов). Ну и в total уже будет число
Серый
19 декабря 2021, 00:18
0
В том и соль, что нет никакого числа.
Есть выводимые ресурсы в виде карточек и есть заголовок к ним.
Допустим у нас концерт и на нем выступает либо один солист, либо несколько, и вот надо как-то сделать автоматизацию, что елси pdoResources выводит один ресурс, то заголовок у нас «Солист:», а если более одного ресурса: «Солисты:» и ниже уже шаблончики этих солистов или солиста.
Или можно как-то «посчитать», получить значение выводимых ресурсов, в соответствии условию, в виде числа?
Евгений Webinmd
18 декабря 2021, 23:05
0
есть модификатор
declension (decl) — склоняет слово, следующее за числом по правилам русского языка. Например: 1 яблоко, 2 яблока, 10 яблок. Вторым параметром указывается выводить ли само число, по умолчанию выводится только подходящий вариант слова. Разделитель вариантов можно задавать третьим параметром, по умолчанию |

{6 | declension : 'яблоко|яблока|яблок'} // яблок
{3 | declension : 'яблоко|яблока|яблок' : true} // 3 яблока
{101 | decl : 'яблоко,яблока,яблок' : false : ','} // яблоко
Александр Мельник
18 декабря 2021, 20:07
0
Да. спасибо. Скорее всего вы правы, потому что я действительно стараюсь последний год не использовать синтаксис jquery и получаю дата атрибуты через dataset.