Вопросы

Как в mFilter2 minishop2 с помощью JS узнать количество найденных результатов?

Всю голову изломал, не могу понять как это делается :(

При фильтрации, когда нет результатов, пишет «Подходящих результатов не найдено.»
Как отловить этот момент? Хочу на блок вешать класс если результатов не найдено.

В документации написано docs.modx.pro/komponentyi/msearch2/snippetyi/mfilter2#Javascript

При обновлении фильтров срабатывает событие mse2_load:

$(document).on('mse2_load', function(e, data) {
    console.log(e, data);
});
Смотрю в консоли при разных результатах, и не могу найти параметр в котором есть количество результатов, подскажите пожалуйста, как узнать количество возвращаемых результатов в mFilter2 на JS?
Роман
20 марта 2020, 02:44
modx.pro
654
0

pdoPage Загрузка при клике на кнопку "Загрузить больше"

Добрый вечер. Есть галерея картинок. При загрузке страницы загружается 14 изображений, при клике на которые при помощи «baguetteBox» показывается изображение на весь экран, ну в общем все как надо. НО после нажатия на кнопку «Загрузить еще» и появления еще 14 картинок клик по ним показывает картинку открытую через браузер, т.е. чтобы попасть на сайт нужно жать кнопку «со стрелкой назад». При этом если оставить пагинацию с номерами страниц то все работает как надо.
Вот код:
[[!pdoPage?
&parents=`19`
&element=`getImageList`
&tvname=`works`
&limit=`14`
&tpl=`tplWorksInGallery`
]]

[[!+page.nav]]


И сам код чанка tplWorksInGallery:

Буду благодарен за ваши высказывания куда смотреть.
Александр
19 марта 2020, 20:42
modx.pro
1
791
0

Требуется подсказка

Программист не выходит на связь, делаю попытки исправить его косяки на сайте самостоятельно, сможет кто-нибудь подсказать — срезан низ у вкладок в нижнем ряду как исправить
Сергей
19 марта 2020, 13:46
modx.pro
1 548
0

Вопрос касаемо поиска на сайте

Друзья, помогите решить проблему

На сайте есть контейнеры / города

К примеру

site/moscow
site/krasnodar
site/ekaterinburg

И так далее

Как реализовать на главной странице поиск с возможностью выбора, в какой именно категории искать?

Вот скрин пример, слева вводим что найти, справа вводим в какой категории

Тыкать сюда
Андрей
19 марта 2020, 13:37
modx.pro
565
0

Связь нескольких карточек в одной

Добрый день, прошу не пинать сильно, если мой вопрос покажется, не правильным, простым…
Есть заполненные карточки товаров на однотипный товар с разницей только в цвете, причём цвет не просто Чёрный или красный, а скажем «шамаханский дуб», можно ли эти товары обьединить в одной карточке, скажем чтобы был главный, который выводится в общем списке, а остальные уже выбирались путём нажатия на иконке в этой карточке, при этом обязательно ли использование компонента msOptionsColor? для примера как должно выглядеть ссылка на действующий сайт dverihall.net/katalog/mezhkomnatnye-dveri/duplex/duplex1.html?color=дуб%20золотой&glass=лакобель%20белое&size=600*2000
Дмитрий
18 марта 2020, 23:53
modx.pro
487
0

Как отображать товары в порядке отображения в админке?

Здравствуйте. Давно не занимался интернет магазинами, но пришла надобность вернуться к этому, и выполнить казалось бы простую задчу. Используя фильтр mFilter2 сделать изначальное отображение товаров (имеется ввиду без фильтрации и сортировки) такое же, как и в админке. В доках на сниппет нашел информацию про сортировку, и так же в категории увидел поле IDx, по которому строится порядок товаров. Но сниппет mFilter2 ни в каком виде IDx не принимает. 'sort' => 'IDx:desc' так же не работает с приставкой ms| и ms_product.
Подскажите пожалуйста, может я что-то не то делаю. Все везде перерыл уже…
Николай
17 марта 2020, 10:41
modx.pro
1
2 903
0

EVAL родитель родителя

Здравствуйте!
Как улучшить этот вызов?

@EVAL 
$parent = $modx->resource->get('parent');

$parent_parent = $modx->runSnippet('pdofield',array('id'=>$parent,'field'=>'parent')); 

if ($parent_parent == 2) {
       $parentid = '19';
}

if ($parent_parent == 3) {
       $parentid = '20';
}

if ($parent_parent == 4) {
       $parentid = '21';
}

$output = $modx->runSnippet('pdoResources',array('parents'=>$parentid,'depth'=>0,'limit'=>0,'sortby'=>'{"id":"ASC"}','tpl'=>'@INLINE [[+pagetitle]]==[[+id]]', 'outputSeparator'=>'||')); 

return $output;
Александр
16 марта 2020, 20:19
modx.pro
1 275
0

Фильтрация продуктов по опции

Добрый день. Есть необходимость вывести продукты у которых опция (size) равен pagetitle текущей страницы.
Использую такую конструкцию:
{var $lowerpagetitle = $_modx->resource.pagetitle | lower } <!-- форматируем pagetitle -->
        {$lowerpagetitle} - <!-- проверяем что все ок с ним -->
        {$_modx->runSnippet('!msProducts', [
                'parents'=> '4', 
                'tpl'=>'',
                'where' => ' { "Data.size:LIKE": $lowerpagetitle } ',
                'showLog' => '1'
        ])}
Выводятся все ресурсы без фильтрации.
P.S. пробовал optionfilters вместо where — результат тот же
Alex
16 марта 2020, 17:05
modx.pro
773
0

Вывод tplPageWrapper в pdoPage при пустом page.nav

Добрый день!
Как отключить вывод &tplPageWrapper при отсутствии пагинации?
Andrey
16 марта 2020, 12:04
modx.pro
1 044
0

Could not cache context settings for web

Всем привет. Подскажите может кто сталкивался. Есть компонент mSync, он производит загрузку товаров из 1с или в ручную с сервера. При загрузке появляется постоянно ошибка:
[2020-03-15 14:43:22] (ERROR @ /var/www/www-root/data/www/site.ru/core/model/modx/modcachemanager.class.php : 172) Could not cache context settings for web.
При этом я увидел, что товары которые загружаются — у них некоторые поля не записываются в таблицу — ms2_product_options, хотя если зайти в товар то это поле добавлено (как я понял, значение этого поля еще хранится в таблице ms2_products в виде json). Соответсвенно при фильтрации эти товары не выходят в результатах — итак с 80% продукции.

Ну и второй вопрос. Зачем дублировать значения полей в ms2_products и в ms2_product_options? Я понимаю, что в ms2_product_options содержатся значения в их оригинальном исполнении (русские, англ буквы), а в ms2_products хранится их json вид, но на кой тогда json?
Евгений Лазарев
15 марта 2020, 14:55
modx.pro
803
0