- Заметки 55
- Комментарии 63
Вчера в 14:49
Не получается установить pbQuiz. Требует pageblocks хотя я его установил. В чём может быть проблема?
pbQuiz — гибкий компонент квизов на контроллерах PageBlocks 4
Вчера в 13:13
Все ок, почему то не выполнялся Cron на хостинге, решил через провайдера.
msImportExport 2.0 129
26 марта 2026, 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
Если связей много то можно навесить общую функцию и в ней выставлять нужные поля.
— lavkaschastya.com/
— www.schastye.com/
React, нестандартные наборы товаров, вёрстка любой сложности. Хочу ещё попробовать полностью отказаться от MODX-шаблонизатора, но подходящего проекта пока не было.
Сергейв шаблоне категории вызываю список товаров так:
и в чанке tpl.msProducts.row.php вывожу ДВА фото товара так:
Количество запросов снизилось вдвое, время загрузки страницы упало в полтора раза.
Извините, если кому наступил на мозоль, разжевав досконально, я знаю, что тут это не приветствуется...)))
MODX делает несколько запросов в базу данных.
Если упрощённо, то сначала определяет ID группы по её имени (из таблицы modx_membergroup_names), потом — ID роли (таблица modx_user_group_roles). Когда ID-шники определены, происходит создание новой записи в таблице modx_member_groups.
После этого сбрасываются значения параметров сессии:
Для удаления пользователя из группы точно так же нужно найти ID-шник группы по её имени и удалить соответствующую запись из таблицы modx_member_groups.
В итоге запись
сгенерирует минимум 5 запросов к базе данных.
Если где-то ранее у нас уже определены ID-шники ролей и групп, то можно внести изменения вручную:
Но через год-полтора будет сложно понять, что тут происходит.
Так что решение о том, какой из способов выбрать, каждый принимает сам.
В modstore.pro, например, сделано вообще вот так:
Поэтому все уведомления от ms2 работают через общую систему уведомлений сайта.
Плагин дублирует опции товара из опций товара из другого контекста у которых совпадает alias. Используется minishop 2.4.11, начиная опции идут исключительно массивами.
Вешается на OnDocFormSave
А те опции которые создаешь сам так