Іван Клімчук
С нами с 16 декабря 2012; Место в рейтинге пользователей: #133 часа назад
Желание имеется) Почти на всех проектах стоит Localizator, поэтому смогу оценить разницу.
Localizator 1.0.9 и 1.1.0 7
Сегодня в 11:00
Делал такие «Спецификации», получилось настолько уникальное и заточенное под сайт решение, что прям и в отдельный пакет то не оформить — куча специфич...
Несколько корзин на сайте, списки желаний/покупок, возможность поделиться, списки товаров для расчет... 1
Сегодня в 08:33
Добрый день
Не то что бы заброшен заброшен, просто не обновляется ввиду отсутствия необходимости.
Исходя их описанных задач, данный компонент не под...
msBaskets 5
11 апреля 2026, 17:48
Добрый день. Товары заказа можно отправить в корзину и сделать заказ и помоему был функционал создания нового заказа из другого заказа.
Женим mFilter2 и msListOrders 8
11 апреля 2026, 17:11
Добра всем!
По ходу компонент заброшен?
Удивился сам что я когда-то его тестил и писал по нему вопросы, уже не помню даже когда и где.
Вопрос тек...
[shareCart] - поделись корзиной 28
11 апреля 2026, 17:08
Добра всем!
Не понял как создать несколько корзин?
И чтобы у каждого был свой шаблон.
Можно ли так сделать некие различные типы корзин типа списо...
[MsAltCart 1.0.7] Теперь с документацией. 2
04 апреля 2026, 18:58
пробовал — ошибка та же
кстати MODX 2.7.2 — подключается нормально
кстати MODX 3.2.0 — не нормально
Не могу подключить репозиторий 3
01 апреля 2026, 18:15
У меня на регистрации словил ошибку.
При это пользователь явно создался, т.к. повторно создать пользователя на ту же самую почту не дает.
При повто...
[MAX bot] отправляем сообщение в бот MAX на изи 7
30 марта 2026, 20:49
PHP >= 8.2 должно быть. У MS3 минимум 8.2
[msCDEK] Расчёт доставки СДЭК в miniShop3 1
За поздравление спасибо.
По теме обновок, то да, после всех мерджей будет новая версия, скорее всего уже 2.6.0, так как кроме исправлений багов добавили и пару новых небольших, но фич.
Второ момент, зачем тут такие странные манипуляции?
Лучше использовать getIterator, на большом количестве ресурсов памянть не закончится, это раз. Два раза вы делаете проход по массиву, абсолютно бесполезно. Вы же и так перебираете ресурсы, почему не сделать вот так?
Большая вложенность кода в {} ухудшает читабельность кода, поэтому идеальный код — это прямой без ветвлений или стараться их избегать где возможно. Например, вместо проверки, есть ли значение в переменной и выполнения кода внутри if, можно проверить, что если значение пустое, то пропустить остальной код и перейти на следующую итерацию.
Про return из сниппета вам уже сказали, лучше собирать весь вывод в буфер в виде массива или строки и потом уже выводить одним return. Это даст возможность в дальнейшем, когда условия задачи изменятся, еще раз пройтись по массиву или строку и применить дополнительные действия над результатом.
Простой пример, у вас сниппет в зависимости от параметра должен выдавать или строку на экран или json в случае ajax-запроса. В таком случае можно сделать так:
И последнее, несмотря на то, что параметры в снипете уже присутствуют в виде переменных, лучше получать их значения через API MODX. Это в дальнейшем даст возможность использовать Property Sets (предустановленные параметры) и значения по умолчанию.
Создал группу, куда поместил этих пользователей. Создал свою политику доступа (вернее две). Одну унаследовал от политики, которая идет с minishop2 (там чуть-чуть подтюнил один момент, чтобы нельзя было удалять заказ. Такой настройки нет в minishop2 сейчас, пришлось подправить исходники, не забыть бы PR Василию выслать), вторую от контент менеджера и поснимал галки со всех действий, которые мне были нужны (в частности запретил изменять как либо все ресурсы — требование заказчика). Затем эти политики доступа привязал в группе к контексту mgr. С правами на этом все, но осталась проблема, что нужно было после входа сразу отправлять пользователя в заказы минишопа, стандартных средств в MODX это сделать я не нашел, но решение есть. Создается панель (dashboard), которая назначается группе и пользователь попадает после входа на эту панель. А в самой панели я создал виджет, которые просто редиректит на заказы минишопа. В итоге, после входа пользователь сразу перенаправляется на нужную страницу.
В общем, коротко не получилось, но я предупреждал, что быстрого и короткого решения нет :)
На следующей неделе, если получится, запишу урок на эту тему.
Вот пример моей формы с фильтрами и кнопкой.