- Заметки 91
- Комментарии 22
37 минут назад
Вариант 1
Переопределить метод msOrderHandler::submit() таким образом, чтобы там перед установлением статуса «Новый» проверялся способ оплаты и, если...
[miniShop2] Дополнительная логика отправки писем при оформлении заказа 1
Сегодня в 11:23
Вот давно для себя писал: modx.pro/solutions/18489
или через мускул (перед выполнением обязательно сделайте дамп) напрямую + потом кеш почистить
U...
Автопереименование повторяющегося URL 9
Сегодня в 11:10
Надо глянуть структуру XML что именно поменялось, если что пишите в ЛС могу посмотреть.
mSync - проблема с интеграцией с 1С Предприятие 8.5 1
Сегодня в 11:06
Используй phpThumbOn он как раз в префиксе указывает размер изображения.
Ссылка: modstore.pro/packages/photos-and-files/phpthumbon
имена файлов миниатюр картинок 1
Вчера в 15:11
Да особо без разницы куда писать. Я отслеживаю все записи. Но в идеале создавать issue в репозитории github.com/modx-pro/MiniShop3/issues.
MiniShop3 - 1.1.0 - Уже в Modstore.pro 19
12 января 2026, 08:59
Ни где не могу найти информацию по настройке импорта изображений «Обновлять данные существующих изображений» — не понять, на что влияет данная настрой...
msImportExport 2.0 127
11 января 2026, 13:08
нет переводов primeVue. То есть если использовать фильтры DataTable или Calendar, то они будут англискими.Вот про это я не подумал. Думаю учтем в буду...
VueTools - универсальный компонент оформления админки в MODX 3 4
08 января 2026, 12:31
Большие сомнения у меня в этом)
resComments — многоуровневые комментарии с пагинацией для ресурсов MODX3 3
07 января 2026, 15:36
вот этот сниппет
require_once MODX_CORE_PATH . 'model/modx/modx.class.php';
$modx = new modX();
$modx->initialize('web');
$modx->getService...
Проблемы с отправкой писем статус заказа из minishop2 5
и вставлять его в нужное место.
Подсказал Володя , за что ему большое спасибо!
Result:
Всё. Поезд дальше не идет. Просьба освободить вагоны. :)
П.С. Когда сделаю, выложу. Мне не жалко.
подставляй в userinfo любое нужное поле.
https://modstore.pro/packages/users/ms2form
Умеет публиковать категории товаров (раздел тикетов) и сами товары (тикет). Поддерживает тэги, мультикатегории, крутой редактор и т.д. Вместе с автором всё еще шлифуем компонент. На выходе, надеюсь, получится интересно.
Теперь, если дату необходимо представить с возможностями «тикетов» — (сегодня/вчера, 5 минут назад) и так далее, то вам необходимо поставить дополнение DateAgo modstore.pro/packages/utilities/dateago и вызывать в нужном месте таким:
или таким образом:
Если же такой необходимости нет, то преобразовать текущий результат (unix timestamp) в обычную дату можно следующим образом:
(возможно, без последнего ":strtotime:date=`%a %b %e, %Y`", но точно не скажу).
Формат даты, соответственно, настраивается по желанию (вот перечень доступных).
Страницы пользователей с нормальными урл
1. Создаем страницу «профиль пользователя» (не путаем с личным кабинетом), выставляем ему псевдоним, допустим users, к которой будут обращаться в виде site.ru/users?profile=имя
2. Ставим дополнение pdoTools
3. Создаем сниппет user.Profile и добавляем его в шаблон вывода
— насколько я помню, сразу вызвать pdoUsers с параметром конкретного пользователя нежелательно, т.к. если пользователя не существует, он выдает по-умолчанию весь список пользователей. Возможно, сейчас что-то поменялось или это можно обойти — не проверял.
Для данного сниппета также можно дописывать условия, если пользователь не активирован и тд и тп. При помощи параметров tpl и prepareSnippet кастомизируем до нужного уровня.
4. Дописываем в .htaccess
— чтобы ссылка приняла вид site.ru/users/Имя_пользователя
Возможность добавлять поля в профиль пользователя
При регистрации: дополнение login
Для редактирования пользователем (личный кабинет) — дополнение office
Возможность указывать шаблон для оформления страницы пользователя
1. Добавляем дополнительное поле в личный кабинет пользователя (шаблон отображения)
2. В шаблоне отображения профиля пользователя дописываем классы, завязанные на полученном значении (class=«userInfo-[[+tpl.style]]»)
2.А. Если необходимо менять структуру шаблона в зависимости от выбранного пользователя значением, то в сниппете в первой части дописываем до
получение extended-поля по id пользователя с вытекающими условиями if, внутри которых будет разный параметр $params['tpl']
Добавить «из коробки» дату регистрации и дату последней активности
Дату регистрации — сниппет логин и 1 доп. поле.
С датой последней активности сложнее, т.к. в таблицах Modx'a, насколько я помню, есть только поле последней авторизации. Возможно, нужно завязывать на сессии +временной промежуток.
Возможность сделать станицу пользователя общедоступной для просмотра
Аналогично пункту 2.А. в разделе «шаблона отображения»
теперь
Выводит как и было задумано 3 последних комментария.
сам сниппет заворачивается:
а чанк Tickets.comment.latest.custom оборачивается в тег li
В итоге чудовищный восторг:
1) Создается 2 группы пользователей: Users и Managers
*все действия в контексте web, роль Member
2) Создается группа ресурсов Restricted -при создании можно сразу автоматически дать доступ Administrator, анонимный доступ, дать доступ нашим группам Users,Managers (в результате в группах появляется доступ к группе ресурсов — Restricted и все пользователи могут их load,list,view (Resource))
3) Создается группа ресурсов Editable — автоматически дать доступ Administrator, дать анонимный доступ, дать доступ группам Users,Managers (в результате в группах появляется доступ к группе ресурсов — Editable)
4) Далее, чтобы можно было добавлять секции, добавляем в группах Administrator, Managers, Users —
еще один доступ к ресусам Editable, уже с политикой — TicketSectionPolicy.
5) Группам Administrator, Managers — дадим доступ и к ресурсам Restricted с политикой TicketSectionPolicy
6) Добавляем разрешенные к редактированию пользователями и менеджерами ресурсы в группу Editable, а разрешенные только к редактированию менеджерами ресурсы в Restricted — например Новости сайта в Restricted, а Вопросы пользователей в Editable.