Максим
С нами с 02 декабря 2015; Место в рейтинге пользователей: #1313 часа назад
Не получается установить pbQuiz. Требует pageblocks хотя я его установил. В чём может быть проблема?
pbQuiz — гибкий компонент квизов на контроллерах PageBlocks 4
4 часа назад
Все ок, почему то не выполнялся Cron на хостинге, решил через провайдера.
msImportExport 2.0 129
Вчера в 21:13
С валидацией по шагам стало понятней, спасибо, с событием change после загрузки файла буду разбираться.
Странный баг в SendIt (квиз+загрузка файлов) 2
19 марта 2026, 15:28
Николай, прежде всего — вы молодец.
А про кеширование — можно пойти по правилу Парето.
То есть дать возможность закешировать самое частое — это ...
mFilter 1.2.0 - улучшенное кеширование и скорость 2
15 марта 2026, 20:35
Minishop2 это завершенная история. Архив. Крайне сомневаюсь, что в него будут добавляться какие то изменения. Это просто некому делать. Заинтересованн...
Порядок значений опций товара 10
15 марта 2026, 13:18
На всякий скопирую код для Bootstrap 4 (есть старый проект, лень переезжать на 5 версию):
/* Закрыть модальное окно после отправки */
document.addEve...
[SendIt] Несколько полезных нововведений в версии 1.1.2 27
13 марта 2026, 16:00
Предлагаю в целом обсудить понятие «вариант товара».
Я пришел к тому, что варианты — являются отдельными товарами. Возьмём для примера футболку. У ...
ms3Variants - Реализация вариантов одного товара в MiniShop3 7
Поддержу Алексея по поводу JWT и тестов.
А с чем связан вынос роутов в index.php? Ведь их может быть много и тогда точка входа разрастется… Может их стоит вынести, например, в отдельный сервис? Я не знаю Slim и возможно там это уже реализовано… Ну или в отдельный файлик?
Создаете /assets/components/arhiv/action.php в котором проверяете является ли это AJAX запросом, присутствует ли action и если эти условия верны, то подключаете точку входа (/index.php). Далее создаете плагин и вешаете его на событие onHandleRequest. В нем на основании экшена вызывать нужный процессор или метод класса.
Или можно в action.php вместо точки входа подкючать свой класс и дергать нужный метод или дергать свой самописный процессор. Только не забываем в action.php написать подключение по API.
Метод класса или процессор должен получать данные формы и на основании этого составлять условие выборки и получать данные. Я бы для этого использовал pdoFetch.
В любом случае придется нормально так разобраться с принципами работы modX.
Если у вас товар может быть доступен с разным весом, то нужно видоизменить поле вес (в доках минишопа, есть пример) ну и потом создавать соответствующие мдификации.
Вот описание
Поэтому вот эту строчку нужно переписать на
Вопрос второй: Удалось получить результат работы этой строки: . Для отладки нужно использовать: . Результат будет в журнале ошибок.
И теперь, если событие включено и уже зная как дебажить, то можем приступать к дебагу.
В коде есть 3 условия из-за которых результат может быть не удовлетворительным, соответственно и проверяем эти условия.
Сам же сниппет должен делать следующее:
1) Получать TV по полю name из таблицы modx_site_tmplvars
2) Получать у данной TV и парсить данные из поля elements. Хранятся они там так: Красный==1||Синий==2
3) Находим нужное и возвращаем.
А теперь кодом (просто наброски для наглядности. Не является готовым решением):
1) Удаляем ручками все из /core/cache/ (саму папку cache оставляем) и проверяем
2) Проверяем корректность записей в лексиконах.
3) Если первые два пункта не дали результатов, то смотрим может где-то в плагинах подгружают буржуйские словарики, например на событии msOnBeforeChangeOrderStatus
4) Если и в плагинах нет ничего такого, то смотрим исходники минишопа, может там переписали (всякое бывает).
Есть 2 варианта самостоятельного решения:
- Воспользоваться modExtra
- Написать ручками без использования заготовки. Примеры можно подсматривать в различных компонентах и исходниках MODx.
Раньше я бы выбрал второй вариант, только потому, что он заставляет вникать в каждый этап и дает более глубокое понимание принципов работы.cultureKey
locale