Вчера в 15:33
Спасибо за обратную связь — возьмем в работу
MiniShop3: итоги февраля и версия 1.6.0 24
22 апреля 2026, 06:21
Мне лично документация вообще не понятна :-). Все просто в доке, но вот вопрос, что за канал создается через ваш бот? Это наш канал или ваш? В доке ма...
[MAX bot] отправляем сообщение в бот MAX на изи 8
22 апреля 2026, 00:22
Оказалось, что Localizator конфликтовал с плагином prettyTags. Ошибки в журнале с этим не связаны.
Localizator 1.0.9 и 1.1.0 8
21 апреля 2026, 19:25
Всё же разобрался.
Браузеры игнорируют CSS-файлы, если сервер отправляет неправильный MIME-тип. Например, вместо text/css может возвращаться text/ht...
pdoTools и sql_mode=only_full_group_by - ошибки при работе PdoPage 3
18 апреля 2026, 15:34
открыл, не знаю, почему он закрыт оказался) но, стоит учесть, что код там очень старый
msProductKits - удобное управление товарами-комплектами (наборами товаров) 31
15 апреля 2026, 13:43
Несколько корзин на странице это исключительно визуализация. miniShop2 только одна корзина. Из коробки показать её можно всего двумя способами, мой па...
[MsAltCart 1.0.7] Теперь с документацией. 3
14 апреля 2026, 19:53
У стрелок есть срок жизни. Кажется месяц. Вася так сделал, потому что на тот момент гонялись за рейтингом и накручивали, лайкая старые заметки.
ms3Favorites — избранное для MODX Revolution 3 и MiniShop3 3
13 апреля 2026, 11:00
Делал такие «Спецификации», получилось настолько уникальное и заточенное под сайт решение, что прям и в отдельный пакет то не оформить — куча специфич...
Несколько корзин на сайте, списки желаний/покупок, возможность поделиться, списки товаров для расчет... 1
неплохая реализация здесь drive2.ru:
Принцип: загружаете файлы, они появляются внизу. У каждого файла есть ссылка «Вставить в текст», вставляет туда, где курсор. в src аттрибуте указывается номер загруженной картинки. Все картинки, что загружены, но не вставлены в текст, появляются внизу поста. Вроде просто, но посты писать на сайте удобно.
1. В системной настройке ms2_order_handler_class указываем myOrderHandler
2. Создаем файл core/components/minishop2/custom/order/myOrderHandler.class.php
3. В него код:
Это один из вариантов. Мы просто при отправке заказа, если пользователь не указал почту, генерируем случайный email.
Можешь посмотреть исходный msOrderHandler и переопределить в нем другой метод, например, где идет проверка email.
Нет, вы можете конечно настроить нужные размеры картинок, а затем через FTP просто заменить сгенерированные маленькие картинки своими — но при перегенерации они перезатрутся.
Я добавил TV «custom_photo», куда руками в случае необходимости подгружал бы фото.
При отображении учитывал бы, есть это фото или нет. Но это много работы писать, свои сниппеты, сложно в общем.
Хостинг за 30$.
А если каждый раз вручную, то наверное проще завести отдельное TV поле для такой картинки…
0.18557000160217 (но периодически 0,25-0,3, видимо в этот момент другие сайты работают)
а было, напоминаю
20$: 0.2700000000000
разница налицо.
Тогда я бы сделал так:
Через этот механизм bezumkin.ru/modx/minishop2/classes/910/ добавил колонку к товару price_rur.
И раз в день пересчитывал бы ее. Т.е. фактически оставил бы пункты 3,4,5 и из 4 убрал бы сохранение в настройки курса.
Т.е. у нас 2 поля для цены у товара. Одна для USD, заполняется менеджером, другая для RUR, пересчитывается полностью автоматически.
в гитхабе в исходниках он есть: github.com/bezumkin/miniShop2/search?q=ms2_price_snippet&ref=cmdform
price_rur, в ней я храню цену товара в рублях,
вот этот код из сниппета updateRates пересчитывает эту цену:
1. Система-Настройки системы: ключ ms2_price_snippet, указываем значение modifyPrice
2. Делаем сниппет modifyPrice:
ну у меня тут несколько другая ситуация, цены на товары вбиты в поля price — в евро, в old_price — в долларах.
3. Создаем ресурс, публикуем его, скрываем из меню, добавляем ему в контент:
и этот ресурс на хостинге вешаем по его url на кронтаб раз в сутки.
4. Создаем сниппет updateRates:
Я в этом сниппете еще кеш чищу в конце всего сайта, мне так нужно.
5. Создаем файл components/cbrf/ExchangeRatesCBRF.class.php:
6. Создаем 2 системные настройки:
rate_euro
rate_usd
7. Открываем первый раз ресурс с шага 3 и проверяем, что он сработал и в настройках курсы обновились.
Это мое решение с одного из сайтов, успешно работающее.
2. Этот сниппет вызываете по crontab раз в сутки, ведь курс меняется раз в сутки
3. Выводите цену с учетом этого курса. В miniShop2 есть специальная настройка в параметрах, позволяющая указать свой сниппет для обработки товара (точно не помню, но она есть, посмотрите). В этом сниппете цену и считаете с учетом курса.
minishop2-combo-options полностью устраивает и делает то, что надо.
Но многие товары переносятся с каталогов и там возможные значения 'этого поля даны строкой с разделителем (запятые или слеш), их много и руками по одному вставлять неудобно. Нужно импортировать их в это поле из строки…
или вариант 2:
если мы в плагине на OnDocFormSave меняем поле textfield, то после сохранения оно в админке обновляется, а вот minishop2-combo-options не обновляется, подозреваю, что просто это не дописано =) MODx в ответе на POST запрос после сохранения документа новое значение поля присылает, а minishop2-combo-options на это не реагирует.