Готовые решения

Добавление и удаление товара из корзины со страницы категории и товара

Периодически клиенты просят функционал, чтобы можно было изменять количество товара не только находясь в корзине, но и со страниц категорий и самого товара.
Поэтому поделюсь своим решением. Сразу отмечу, что оно не претендует на позицию идеального, так что если есть замечания и предложения, то с радостью их выслушаю.
ВАЖНО! У меня версия miniShop2 4.2.0. Код будет отличаться для версий ниже. Так например до 4.1.4 отличается метод генерации ключа товара, а до версии 4.1.0 методы add и change корзины возвращают только ключ товара, когда в более новых версиях также есть измененное кол-во товара и прочая информация о нем.

1) Итак, для начала создадим сниппет inCart, который будет отвечать за вывод HTML-разметки, в зависимости от того, есть товар в корзине или нет. И соответственно два чанка tpl.inCart.btn и tpl.inCart.btn.not
Dan
Dan
25 декабря 2023, 01:30
modx.pro
2
1 304
+9

ecommerce.js - Электронная коммерция (Яндекс.Метрика и Google Analytics) для сайтов на базе MODX + miniShop2

Привет!

Хочу поделиться js скриптом, который позволяет передавать данные электронной коммерции в системы аналитики Яндекс.Метрика и Google Analytics.

Из особенностей отмечу то, что мое решение выполнено не в виде дополнения для MODX, а в виде одного js файла и не имеет в своем составе php кода (сниппетов и т.п.). Также я применил, пожалуй, не самый стандартный подход в том, как будут получаться данные о товарах на страницах сайта.
Наумов Алексей
20 декабря 2023, 12:03
modx.pro
7
1 055
+12

Tikets загрузка избражений в TV

Столкнулся с проблемкой, а именно загрузкой изображения в свои TV типов image или file, из коробки Tikets загружает файлы и привязывает их к ресурсам, мне показалось это не удобным (на вкус и цвет...)
vectorserver
28 ноября 2023, 13:23
modx.pro
2
531
+3

phpThumbOf modx 3

Если кому-то требуется, что бы был ресайз фотографий на modx 3 по средствам phpThumbOf, то необходимо внести правки.

В сниппете удалить
if (!$modx->loadClass('modPhpThumb',$modx->getOption('core_path').'model/phpthumb/',true,true)) {
    $modx->log(modX::LOG_LEVEL_ERROR,'[phpThumbOf] Could not load modPhpThumb class.');
    return '';
}


И заменить строчку через сервер в файле root>/core/components/phpthumbof/model/phpthumbof/phpthumbof.class.php. #193

$this->phpThumb = new MODX\Revolution\modPhpThumb($this->modx);
Источник

Я для себя искал решение, может кому пригодится.
Сергей
07 ноября 2023, 13:54
modx.pro
3
1 047
+2

Вывод даты msTimeStamp полей MiniShop2: new, favorite, popular...

И снова, всем привет! Попросили меня на днях сделать вывод дат msTimeStamp, чего по какой то причине нет из коробки… Потратив некоторое время, получилось решение в виде сниппета, за помощь в написании которого, выражаю большую благодарность Степану Гончарову!


Денис Усманов
05 октября 2023, 17:01
modx.pro
3
740
+8

[mFilter2] сдвиг слайдера пальцем на мобилках

заранее предупреждаю решение «в лоб» и может кто подскажет более красивое решение

для того чтобы slider слушался движения пальцем по экрану мобилки оказувается нужно что-то придумать и для этого еще 10 лет назад выпустили некий хак для jquery UI
github.com/furf/jquery-ui-touch-punch
тут почитаете кому интересно

итого чтобы заработал наш сладер нам нужно подключить на страницу еще 2 файла
собственно jqueryUI и jquery-ui-touch-punch
кастомный jqueryUI с модулями mouse и Draggable
можно скачать по ссылке

теперь все это дело подключаем
JS
<!-- это мои пути у вас все будет так как вы захотите -->
<script src="/tpl/lib/jquery-ui-1.13.2.custom/jquery-ui.min.js"></script>
<script src="/tpl/lib/jquery-ui-1.13.2.custom/jquery.ui.touch-punch.js"></script>
в CSS нужно добавить
.fl_price .mse2_number_slider .ui-slider-range.ui-widget-header{
    position: absolute;
}

.fl_price .mse2_number_slider .ui-slider-handle.ui-corner-all.ui-state-default{
    position: absolute;
}

.fl_price .mse2_number_slider {
    position: relative;
}
У меня работает)))
Stepan
04 октября 2023, 19:23
modx.pro
4
720
+4

MOXI - Быстрая настройка Modx Revo после установки

Рассмотрим как автоматизировать начальную настройку modx с помощью готового инструмента.


Алексей Соин
15 июня 2023, 12:44
modx.pro
5
1 289
+27

Скрипт для создания бэкапа файлов сайта и базы данных MODX Revolution

Этот скрипт создает архив файлов сайта и экспортирует базу данных в формате SQL. Скрипт размещается в корневой директории сайта и запускается через браузер. В результате его работы создаются два файла: архив с файлами сайта и файл с экспортированной базой данных, которые сохраняются в папке «backups» в корневом каталоге сайта.
Илья
28 апреля 2023, 15:23
modx.pro
1 261
+8

[СДЕЛАЙ САМ] Сравнение товаров MiniShop2 просто!

Приветствую, у меня было много безуспешных попыток подружиться с компонентом Comparision, но каждый раз он оказывался слишком сложным. В итоге, я написал своё, простое, если не сказать, примитивное, решение.
Артур Шевченко
25 апреля 2023, 18:54
modx.pro
3
819
+7

[FetchIt] - Форма с валидацией номера телефона и выбором страны

Привет форум!

Решил раскрыть такой кейс, как форма с полем ввода номера телефона, ведь с такой задачей разработчик сталкивается частенько. Она далеко непростая и имеет подводные камни. Так давайте же нырнём и первое, что нужно сделать — это разбить её на подзадачи.

  • Валидация: Тут пока всё понятно, нам по хорошему нужно валидировать номер телефона.
  • Форматирование: А с этим пунктом веселее, т.к. пользователи могут писать номер телефона в разных форматах: 8 *** *** ** **, +7 ***-***-**-** +7 (***) *******, 8 (***) *** **-** и еще 100500 вариантов.
  • Разные страны: А теперь всё серьезнее, дело в том, что разные страны это разное форматирование и соответственно разная валидация.
Вы скажете — это очень просто, человечество бороздит космос, электрифицировало города и сёла, придумало интернет и в частности Viber. И вы будете правы, хотя, если бы все люди были похожи на меня, то мы остались бы в первобытном обществе с палками и камнями… но с Viber-ом?.

Баха Волков
03 марта 2023, 13:10
modx.pro
7
3 821
+18