4 часа назад
Дополнение доступно modstore.pro/packages/photos-and-files/imageoptimizer
ImageOptimizer - WebP/AVIF и responsive <picture> для MODX 3 1
Вчера в 14:30
Добавил localizator3_default_language
Localizator3 для MODX 3: перевод полей и TV без отдельного context на язык, Vue 3 + PrimeVue 4
06 июля 2026, 23:49
Начиная с версии 3.0.0-beta добавлена поддержка MiniShop3
Минимальные требования:
PHP 8.4 MODX 3.2 MiniShop3
msInShopNotify 6
03 июля 2026, 13:55
Обновление
1.2.0-pl (03.07.2026)
— добавлены уведомления о заявках FormIt через hook-сниппет `maxNotifyFormIt`;
— добавлены уведомлени...
MaxNotify 2
03 июля 2026, 13:42
Да, планируется. Даже чуть больше, чем просто бонусная система)
[msBonus2] 1.3.0 Бонус-коды, уведомления о сгорании и совместимость с msMultiCurrency 7
30 июня 2026, 13:13
Добрый день! Может что-то с правами доступа к файлам? Посмотрите логи в modx, в php. С ходу сложно ответить, ранее не было таких случаев.
FileMan - прикрепление файлов к ресурсам для MODX 3 74
29 июня 2026, 21:27
Большое спасибо за подсказку, но проблема решилась переустановкой.
Зависает корзина минишоп2 2
27 июня 2026, 10:51
Применительно к данному компоненту не знаю, что можно сделать специфического для ИИ. Хотя в целом идея интересная, можно в пакет добавлять скилл или п...
Хватит логгировать как в каменном веке 🪵 5
26 июня 2026, 09:30
Все рекомендации учтены
CommerceBridge1C — двусторонняя интеграция 1С с MODX 3 и miniShop3 по CommerceML 2. 8
А вот с оплатой через 2 разных счета, скорее всего, придется помучиться и править ядро.
Допустим, у вас есть сниппет pdoResources на странице вида site.ru/catalog. Ссылки с заранее определенными способами фильтрации будут выглядеть примерно вот так:
site.ru/catalog?sortby=rating&dir=ASC
site.ru/catalog?sortby=pagetitle&dir=DESC
… и так далее.
Все, что идет после site.ru/ — это get-параметр ссылки и его нам необходимо перехватывать, чтобы отдавать сниппету, выводящему ресурсы.
Мы можем создать простой сниппет GET со следующим содержанием:
И вместе с данным сниппетом преобразовывать вывод ресурсов на странице примерно таким образом:
[[!pdoResources? &sortby=`[[!GET:default=`pagetitle`? &get=`sortby`]]` &sortdir=`[[!GET:default=`DESC`? &get=`dir`]]`]]
Минус данного решения в том, что пользователь может вбить свое значение в адрес ссылки, допустим: site.ru/catalog?sortby=TEST&dir=BANAN, в результате чего на странице сниппет вернет ошибку.
Поэтому, напишем свой сниппет pdoResourcesWithSort:
Вызывается как-то так: [[!pdoResourcesWithSort? &sortbyGet=`sortby` &sortdirGet=`dir`]]
Вызывается как-то так: [[!getLexicon? &name=`category.` &get=`category` &cultureKey=`ru` &namespace=`core` &theme=`about`]]
Должно помочь.
longtitle — дефолтное поле любого ресурса, поэтому оно «получается» в коде вкупе с получением запроса о самом ресурсе.
Тв-полей же может быть бесконечное множество и, так как они хранятся в отдельной таблице, по умолчанию они не подцепляются к ресурсу (чтобы не плодить лишних запросов). Не говоря уже о том, что в вашем варианте сниппет не может знать, откуда ему взять это значение — из тв или из встроенных полей ресурса (к примеру, вы можете создать тв-поле pagetitle).
Добавьте группе редакторов права TicketUserPolicy на уровне Member и должно заработать.
Первый — специально заточенный под статьи и комментарии модуль (создаете раздел тикетов, после чего дочерние отображаются только «внутри» него, но не в древе).
Второй — также отображает внутренние ресурсы «внутри» себя, позволяя спрятать отображение в древе, но уже без комментариев и прочих сопутствующих обвесков.
— в свое время была подобная проблема, решилась обязательным определением адреса отправителя/получателя и заполненным аналогичным полем в системных настройках.
Вообще, это как правило реализуется созданием кастомных классов корзины. В противном случае, ценники можно «визуально» менять, но при расчете итоговой стоимости цена будет без учета скидки.
Если данная схема скидок работает для всех товаров, то все довольно просто — в кастомном классе расширяем функцию получения списка товаров корзины, в которой смотрим параметр $item['count'] и в зависимости от него меняем параметр $item['price'].
В противном случае все усложнится получением схемы скидок для каждого товара.
Ну тогда путь такой:
/manager/includes/config.inc.php -> $database_connection_charset
html() замените на text()
Вот рабочий код:
— вставьте где-нибуь в конце страницы, после вызова jQuery и будет пересчитывать итоговую сумму в каждой колонке товара.
Вы также можете указать для него свои шаблоны tplRow (строка товара), tplOuter (обертка), tplEmpty (нет результатов) а также указать подключаемые тв-поля и превью товаров через includeTVs и includeThumbs соответственно.
и все заработает.)