Іван Клімчук
С нами с 16 декабря 2012; Место в рейтинге пользователей: #133 часа назад
Такое сделать вообще не сложно, но ведь это в десятки раз дороже, чем использовать подписочную модель…
[aiAssist] Я же просто попросил его создать магазин, а он СДЕЛАЛ ЭТО! 6
4 часа назад
Не хватает кастомизации автокомплита: к товарам нужны как минимум цена и фото.
Будет отлично, если появится в будущем.
mSearch для MODX3 и MS3 - уже в modstore.pro 11
Вчера в 10:56
Нюанс со сниппетом msCart: прерывание работы сниппета при наличии $_GET['msorder']: disk.yandex.ru/i/fOiDPWuW8xgXsg
Мне кажется, это ошибочно...
Новости MiniShop3, mSearch, mFilter 19
07 мая 2026, 07:53
Решение оказалось банальным: в вашем источнике файлов нужно, чтобы пути НЕ начинались со слеша.
Почему в Диспетчере файлов не отображаются SVG файлы? 7
06 мая 2026, 16:09
Круто, установилось наконец. Начинаю изучать.
Мне было грустно без Modhost и я сделал Meowbox 27
06 мая 2026, 13:28
Столкнулся с этим сейчас) у меня один файл не открывался, оказалось файл был в кодировке windows-1251, сменил на utf-8 и все заработало.
Uncaught SyntaxError: Unexpected token , 16
28 апреля 2026, 10:33
docs.modx.pro/components/minishop2/development/scripts-and-styles
вам нужно событие Order.submit.response.success
Как создать java script событие для кнопки "оформить заказ"? 1
27 апреля 2026, 13:13
Если только после майских праздников можно будет сделать для 2.x. Попробую.
mxDadata — интеграция DaData (Suggest, Clean, Party) с MODX 3 и MiniShop3 2
За поздравление спасибо.
По теме обновок, то да, после всех мерджей будет новая версия, скорее всего уже 2.6.0, так как кроме исправлений багов добавили и пару новых небольших, но фич.
Второ момент, зачем тут такие странные манипуляции?
Лучше использовать getIterator, на большом количестве ресурсов памянть не закончится, это раз. Два раза вы делаете проход по массиву, абсолютно бесполезно. Вы же и так перебираете ресурсы, почему не сделать вот так?
Большая вложенность кода в {} ухудшает читабельность кода, поэтому идеальный код — это прямой без ветвлений или стараться их избегать где возможно. Например, вместо проверки, есть ли значение в переменной и выполнения кода внутри if, можно проверить, что если значение пустое, то пропустить остальной код и перейти на следующую итерацию.
Про return из сниппета вам уже сказали, лучше собирать весь вывод в буфер в виде массива или строки и потом уже выводить одним return. Это даст возможность в дальнейшем, когда условия задачи изменятся, еще раз пройтись по массиву или строку и применить дополнительные действия над результатом.
Простой пример, у вас сниппет в зависимости от параметра должен выдавать или строку на экран или json в случае ajax-запроса. В таком случае можно сделать так:
И последнее, несмотря на то, что параметры в снипете уже присутствуют в виде переменных, лучше получать их значения через API MODX. Это в дальнейшем даст возможность использовать Property Sets (предустановленные параметры) и значения по умолчанию.
Создал группу, куда поместил этих пользователей. Создал свою политику доступа (вернее две). Одну унаследовал от политики, которая идет с minishop2 (там чуть-чуть подтюнил один момент, чтобы нельзя было удалять заказ. Такой настройки нет в minishop2 сейчас, пришлось подправить исходники, не забыть бы PR Василию выслать), вторую от контент менеджера и поснимал галки со всех действий, которые мне были нужны (в частности запретил изменять как либо все ресурсы — требование заказчика). Затем эти политики доступа привязал в группе к контексту mgr. С правами на этом все, но осталась проблема, что нужно было после входа сразу отправлять пользователя в заказы минишопа, стандартных средств в MODX это сделать я не нашел, но решение есть. Создается панель (dashboard), которая назначается группе и пользователь попадает после входа на эту панель. А в самой панели я создал виджет, которые просто редиректит на заказы минишопа. В итоге, после входа пользователь сразу перенаправляется на нужную страницу.
В общем, коротко не получилось, но я предупреждал, что быстрого и короткого решения нет :)
На следующей неделе, если получится, запишу урок на эту тему.
Вот пример моей формы с фильтрами и кнопкой.