Сергей Шлоков
С нами с 31 января 2013; Место в рейтинге пользователей: #553 минуты назад
Далее код оставил без изменений
<script type="text/javascript">
// <![CDATA[
{literal}
Ext.onReady(f...
Помогите добить VideoGallery 2
1 час назад
По этому вопросу тоже думаю — создал вопрос тут
Вопрос по будущему MODX и стратегии развития. 2
6 часов назад
Не нужно меня поддерживать в данном конкретном случае. Прошу убрать лишнее
Опыт по переносу MODX2 на MODX3 и Minishop3 2
7 часов назад
В общем убил целый день, но… так у меня ничего и не вышло.
не могу зарегистрировать класс.
содержание самого файла my_msorderhandler.class.php:
...
Кастомизация minishop'a 9
Вчера в 16:01
Компонент очень нужный и мне кажется будет востребован.
У меня тут задача стоит сделать что-то подобное на сайте на движке на MODX 2.8 — там есть ста...
ms3Variants - Реализация вариантов одного товара в MiniShop3 4
Вчера в 14:42
тут пришла мысль что никто не захочет просто так делиться своим опытом за бесплатно. Можно было бы сделать статьи и кейсы платными? Типа хочешь прочит...
Предложение по развитию сообщества: Создание каталога портфолио/реализованных кейсов на MODX с демо ... 1
Вчера в 10:08
Добрый день! Я этот компонент давно делал, и еще лет 5 не возвращался к нему… он работоспособен, все в этом плане нормально (ну по крайней мере с php ...
msProductKits - удобное управление товарами-комплектами (наборами товаров) 29
19 февраля 2026, 10:22
Вижу, спасибо.
Ошибочно решил, что если есть в документации minishop2, то в старых версиях есть и сам код не посмотрел.
Предыдущий идентификатор статуса при событии 'msOnChangeOrderStatus' 4
19 февраля 2026, 09:27
Привет, Алексей.
1. Как определяем ботов
Проверка идёт по User-Agent в ms3rv_is_bot() (helpers.php). Используется regex по типичным маркерам краул...
ms3RecentlyViewed - Недавно просмотренные товары для MiniShop3 2
2. Или используем твой вариант с таблицей в виде префикса или такой
Напомню, что можно работать напрямую с запросами через базовый API.
3. Это чудит xPDO. Он формирует запрос, а не pdoFetch. А вообще очень странная конструкция. Я бы так даже не додумался написать. Для сравнения на SQL сервере я бы написал так
Для сравнения на клиенте так
А потом в цикле проверил бы на равенство два последних поля.
Но так как запрос простой и без логики, я бы не стал вообще использовать xPDO, а сделал бы маленький и лёгкий запрос (без кучи объектов xPDO)
Наверно и ты мог бы сэкономить своё время ;)
П.С. Ну а по тексту… Количество ошибок и опечаток расстраивает. Есть хорошее правило у редакторов — вычитывать текст перед публикацией. Событие «Добавление в корзину» меняет лого, хотя файл называется Title.php.
П.П.С. Кстати, обрати внимание, в моём компоненте не нужно прописывать добавленный метод в events.php. Он сразу срабатывает.
Замена планировалась на основе modHelpers. Осталось написать замену сниппетам. Но я хотел заменить их на сервисы. Чтоб как у взрослых. Чем меньше MODX специфичных вещей, тем легче перемещаться между стеками. И легче заходить в MODX из тех же фреймворков.
Статические элементы и файловые элементы — семантически разные вещи. Последние не имеют дубля в БД. Лучше их не путать. Дополнительные настройки только запутают людей. В pdoTools есть системная настройка «pdotools_elements_path». Её определяет человек с правами на эту операцию. Если нужно переопределять папку с шаблонами согласно какой-то логике, контент-менеджер просит этого человека и тот пишет плагин, в котором переписывает настройку согласно задаче. Всё просто, логично и под контролем. Ну не должен контент-менеджер иметь права гулять по всей файловой системе.
В общем, задача — чтобы pdoTools всегда использовал указанный в системной настройке парсер, который может быть pdoParser, SmartyParser (есть в ZoomX) или TwigParser (если такой будет).
И ещё, очень плохая идея держать лог ошибок в открытом доступе. Программистам по рукам давать надо.