01 февраля 2026, 17:45 UPD: Предложенный вариант с формированием ссылок рабочий, конечно, но он вызывает перезагрузку страницы. Как бы решить эту задачу красиво, с Ajax как в МодСтор — ecommerce?paid=1 Вопросы / Кнопки как в ModStore 12 0
28 января 2026, 20:11 Понял в чем дело ) Чекбокс один выводился. Переписал вывод — норм. Сергей, спасибо за подсказки! Вопросы / Кнопки как в ModStore 12 0
28 января 2026, 20:11 Понял в чем дело ) Чекбокс один выводился. Переписал вывод — норм. Сергей, спасибо за подсказки! Вопросы / Кнопки как в ModStore 12 0
28 января 2026, 13:40 По стране «Россия» это делается легко, конечно, а как исхитриться и выбрать фильтром «Импорт», то есть не «Россия»? Вопросы / Кнопки как в ModStore 12 0
28 января 2026, 13:19 Оказалось не так просто… [[!mFilter2@mikmFilter? &paginator=`pdoPage@pdoPage_m` &limit=`30` &parents=`3` &showEmptyFilters=`false` [[$pdoPage-prefix?]] &hideContainers=`1` &element=`msProducts` &where=`{ [[!+modx.user.id:is=`235`:then=`"Data.remains:>":0.001`:else=`"Data.remains:>":0.001,"Data.image:IS NOT":null`]]}` &class=`msProduct` &sort=`ms|remains:desc` &filters=` ms|mat ,ms|cattools ,ms|color ,ms|application ,msoption|ms_SlabsBackLight ,ms|weight ,ms|made_in ,ms|price:number ,ms|remains:number ` &aliases=` ms|mat==poroda ,ms|cattools==vidprodukcii ,ms|color==cvet ,ms|application==obrabotka ,msoption|ms_SlabsBackLight==backlight ,ms|weight==tolschina ,ms|made_in==country ` &showLog=`0` &tplFilter.outer.poroda=`tpl.mFilter2.filter.select` &tplFilter.row.poroda=`tpl.mFilter2.filter.option` &tplFilter.outer.vidprodukcii=`tpl.mFilter2.filter.select` &tplFilter.row.vidprodukcii=`tpl.mFilter2.filter.option` &tplFilter.outer.cvet=`tpl.mFilter2.filter.select` &tplFilter.row.cvet=`tpl.mFilter2.filter.option` &tplFilter.outer.obrabotka=`tpl.mFilter2.filter.select` &tplFilter.row.obrabotka=`tpl.mFilter2.filter.option` &tplFilter.outer.backlight=`tpl.mFilter2.filter.checkbox` &tplFilter.row.backlight=`tpl.mFilter2.filter.option` &tplFilter.outer.tolschina=`tpl.mFilter2.filter.select` &tplFilter.row.tolschina=`tpl.mFilter2.filter.option` &tplFilter.outer.country=`tpl.mFilter2.filter.select` &tplFilter.row.country=`tpl.mFilter2.filter.option` &tplFilter.outer.ms|price=`tpl.mFilter2.filter.slider` &tplFilter.row.ms|price=`tpl.mFilter2.filter.number` &tplFilter.outer.ms|remains=`tpl.mFilter2.filter.slider` &tplFilter.row.ms|remains=`tpl.mFilter2.filter.number` &tpls=`tpl.msProducts.row_m` ]]Вот так у меня формируется список фильтров. Мне нужно на странице каталога в верхней части (как в modstore) поставить 2-3 кнопки, нажатие на которые, отфильтрует результаты по конечному значению фильтра ms|made_in (страна). То есть кнопка «Россия» покажет товары российского производства, а кнопка «Импорт» покажет всю остальную продукцию. И, желательно, чтобы это и выглядело как в modstore, то есть без селектов, а именно кнопкой. Вопросы / Кнопки как в ModStore 12 0
27 января 2026, 19:07 Точнее, я думал об этом. Что-то вроде применения двух mFilter2 на одной странице. Показалось некорректным. Но попробую как вариант, спасибо Вопросы / Кнопки как в ModStore 12 0
19 ноября 2018, 19:36 Если кому пригодится, то решил так — в файле ajaxlogin.js вместо redirect = redirectSubmitResId;пишем $('#ajaxlogin-modal').delay(3000).fadeOut(); Вопросы / AjaxLogin кнопка Регистрация 2 0
05 октября 2018, 10:22 Спасибо! А где можно почитать про optionFilters? сколько гуглил — ни разу не попадалось Вопросы / Вопрос по выборке с where 5 0
08 августа 2018, 16:23 Спасибо, Василий. по pagetitle работает правильно (показывает все результаты, потому что уникальных нет). А мне надо по полю shifr (аналог article). Правильно ли я поменял в коде? if (!empty($_REQUEST['query'])) { $query = htmlspecialchars(strip_tags(trim($_REQUEST['query']))); $resource = $modx->getObject('msProductData', [ 'shifr' => $query, 'class_key' => 'msProduct', 'deleted' => 0, 'published' => 1, 'context_key' => $modx->context->key, ]); if ($resource) { $modx->sendRedirect($resource->get('uri')); } } Вопросы / Поиск по полю и переход к товару mSearch2 19 0
08 августа 2018, 13:19 Пока отключил $_GET['search'] поставил туда постоянное значение. Но появилась проблема с sendRedirect — ERR_TOO_MANY_REDIRECTS. Она есть в твоем варианте: if($product_id) { $modx->sendRedirect($modx->makeUrl($product_id)); } и в моем: if($product_id) { $url = $modx->makeUrl($product_id); $modx->sendRedirect($url); } если поставить $modx->sendRedirect('http://yandex.ru'); — редирект без проблем! что у меня может вызывать многократный редирект? Вопросы / Поиск по полю и переход к товару mSearch2 19 0
08 августа 2018, 10:12 Спасибо за помощь ) Вчера еще полдня провозился, теперь сервер выдает 500… На сервере в логах: 2018/08/08 09:42:32 [error] 3191#3191: *56026 FastCGI sent in stderr: «PHP message: PHP Fatal error: Uncaught Error: Call to a member function get() on null in /home/*****/www/core/cache/includes/elements/modsnippet/48.include.cache.php:3 Stack trace: #0 /home/*****/www/core/model/modx/modscript.class.php(70): include() #1 /home/*****/www/core/model/modx/modparser.class.php(536): modScript->process(NULL) #2 /home/*****/www/core/components/pdotools/model/pdotools/pdoparser.class.php(273): modParser->processTag(Array, false) #3 /home/*****/www/core/model/modx/modparser.class.php(250): pdoParser->processTag(Array, false) #4 /home/*****/www/core/components/pdotools/model/pdotools/pdoparser.class.php(65): modParser->processElementTags('[[$Header]]', '<section class=...', false, false, '[[', ']]', Array, 9) #5 /home/*****/www/core/model/modx/modchunk.class.php(117): pdoParser->processElementTags('[[$Header]]', '<section class=...', false, false, '[[', ']]', Array, 10) #6 /home/*****/www/core/model/modx/modparser.class.php(498): modChunk->process(NULL) #7 /home/*****/www/core/comp» while reading response header from upstream, client: 194.***.11.106, server: *****.h3.modhost.pro, request: «GET /katalog/kolczo-iz-belogo-zolota,-358380/ HTTP/1.1», upstream: «fastcgi://127.0.0.1:1****», host: "*****.h3.modhost.pro" Причем такое выдает на любые поля из msProductData. Гуглю на тему получения $_GET['search'] пока не понятно. Вопросы / Поиск по полю и переход к товару mSearch2 19 0
07 августа 2018, 17:06 $res = $modx->getObject('msProduct', array('article' => $_GET['search'])); [2018-08-07 17:05:32] (ERROR @ /home/s9074/www/core/xpdo/om/xpdoobject.class.php: 240) Error 42S22 executing statement: Array ( [0] => 42S22 [1] => 1054 [2] => Unknown column 'msProduct.article' in 'where clause' ) не могу понять в чем дело… Вопросы / Поиск по полю и переход к товару mSearch2 19 0
07 августа 2018, 10:27 Рабочий сниппет можно увидеть? Попробую понять и применить. Вопросы / Поиск по полю и переход к товару mSearch2 19 0
07 августа 2018, 09:48 Василий, день добрый. Да именно так, как на modstore.pro. Вопросы / Поиск по полю и переход к товару mSearch2 19 0
06 августа 2018, 17:50 Вот сниппет и не получается, нужно ж по нажатию «Найти» перейти на товар, при условии, что он есть Вопросы / Поиск по полю и переход к товару mSearch2 19 0
06 августа 2018, 17:06 Это понятно, вопрос в переходе стазу на товар без страницы «результаты поиска». Вопросы / Поиск по полю и переход к товару mSearch2 19 0
mxHeadless &mdash; REST API для MODX 3 без лишнего 1) Кастомная валидация Из коробки есть whitelist полей и базовая проверка типов. Свою логику сверху навешиваете через Extension API: OnMxHeadlessBeforeRequest / свой middlewar...
Открытое письмо руководству MODX и команде MODX Revolution (Русская версия) Николай, по твоему комментарию — полностью согласен. Выше писал о другом. А то, что не принимаются улучшения по существующей «кодовой базе» MODx — это да. Это проблема с которо...
[Решено] Обновление MODX 3.2.2 компонент FetchIt ломает сайт PHP 8.3 Уррра! Благодарим! И посылаем лучи добра!
[Tickets] Версия 1.14.0-pl — первый релиз с апреля 2022 Иван, ещё после обновления автоматически не заполняются поля introtext с выставленным ограничением в 500 символов. Без ограничения — заполняются.
modxkit/testbench - тесты дополнений MODX 3 на живом ядре, в том числе в CI MODX 3.0.x не поддерживается. Не «руки не дошли», а измеренная причина: ядро 3.0.x не поднимается в API-режиме полноценно. modX::reloadConfig() двумя соседними строками дважды вклю...
ModxMinify - Error 500 @Илья Уткин привет! github.com/Sterc/modx-minify давай обновим версию в сторе?
Impex3 - импорт/экспорт ресурсов MODX3 с поддержкой товаров MiniShop3 Да, несуществующие на сайте ресурсы будут просто проигнорированы. Те, которые есть, будут обновлены стандартным образом.
pdoTools 2.14.0 и pdoTools3 3.1.0-pl: обновление для MODX 2 и MODX 3 Это будет исправлено в следующей версии github.com/modx-pro/pdoTools3/pull/20
MiniShop3: обратная связь от разработчиков Добрый день! github.com/modx-pro/MiniShop3/issues/641 — уже на код ревью. Спасибо
Как бы решить эту задачу красиво, с Ajax как в МодСтор — ecommerce?paid=1
Вот так у меня формируется список фильтров. Мне нужно на странице каталога в верхней части (как в modstore) поставить 2-3 кнопки, нажатие на которые, отфильтрует результаты по конечному значению фильтра ms|made_in (страна). То есть кнопка «Россия» покажет товары российского производства, а кнопка «Импорт» покажет всю остальную продукцию. И, желательно, чтобы это и выглядело как в modstore, то есть без селектов, а именно кнопкой.
пишем
по pagetitle работает правильно (показывает все результаты, потому что уникальных нет).
А мне надо по полю shifr (аналог article). Правильно ли я поменял в коде?
Но появилась проблема с sendRedirect — ERR_TOO_MANY_REDIRECTS.
Она есть в твоем варианте:
if($product_id) {
$modx->sendRedirect($modx->makeUrl($product_id));
}
и в моем:
if($product_id) {
$url = $modx->makeUrl($product_id);
$modx->sendRedirect($url);
}
если поставить $modx->sendRedirect('http://yandex.ru'); — редирект без проблем!
что у меня может вызывать многократный редирект?
Вчера еще полдня провозился, теперь сервер выдает 500…
На сервере в логах:
2018/08/08 09:42:32 [error] 3191#3191: *56026 FastCGI sent in stderr: «PHP message: PHP Fatal error: Uncaught Error: Call to a member function get() on null in /home/*****/www/core/cache/includes/elements/modsnippet/48.include.cache.php:3
Stack trace:
#0 /home/*****/www/core/model/modx/modscript.class.php(70): include()
#1 /home/*****/www/core/model/modx/modparser.class.php(536): modScript->process(NULL)
#2 /home/*****/www/core/components/pdotools/model/pdotools/pdoparser.class.php(273): modParser->processTag(Array, false)
#3 /home/*****/www/core/model/modx/modparser.class.php(250): pdoParser->processTag(Array, false)
#4 /home/*****/www/core/components/pdotools/model/pdotools/pdoparser.class.php(65): modParser->processElementTags('[[$Header]]', '<section class=...', false, false, '[[', ']]', Array, 9)
#5 /home/*****/www/core/model/modx/modchunk.class.php(117): pdoParser->processElementTags('[[$Header]]', '<section class=...', false, false, '[[', ']]', Array, 10)
#6 /home/*****/www/core/model/modx/modparser.class.php(498): modChunk->process(NULL)
#7 /home/*****/www/core/comp» while reading response header from upstream, client: 194.***.11.106, server: *****.h3.modhost.pro, request: «GET /katalog/kolczo-iz-belogo-zolota,-358380/ HTTP/1.1», upstream: «fastcgi://127.0.0.1:1****», host: "*****.h3.modhost.pro"
Причем такое выдает на любые поля из msProductData. Гуглю на тему получения $_GET['search'] пока не понятно.
[2018-08-07 17:05:32] (ERROR @ /home/s9074/www/core/xpdo/om/xpdoobject.class.php: 240) Error 42S22 executing statement:
Array
(
[0] => 42S22
[1] => 1054
[2] => Unknown column 'msProduct.article' in 'where clause'
)
не могу понять в чем дело…