Mr.Prop · 09 сентября 2019, 01:46 Искал ответ почти неделю. Прошерстил весь сайт вдоль и поперёк. Пробовал переопределить класс корзины и ещё кучу вариантов с сайта. Очень много вариантов и все решают какую-то задачу вместе с обновлением корзины. А если у меня задача другая, то… И тут пришла мысль: а почему бы не перезагрузить корзину средствами JS при наступлении события? А какое событие у нас наступает? Правильно — изменяется количество ВСЕГДА когда мы что-то делаем в корзине. В общем берём файл по адресу assets/components/minishop2/js/web/default.js или его изменённую версию (если она у вас есть) и ищем строки: if (status['total_count'] < 1) { location.reload(); }В этих строках написано: если количество меньше 1 (одного), то перезагрузить страницу. Меняем на строки: if(window.location.pathname == "/cart"){ location.reload(); }В этих строках написано: если адрес раздела сайта, в котором мы находимся, совпадает с /cart то перезагрузить страницу. Полный адрес у меня выглядит так: мой-сайт.ru/cart Соответственно, если адрес мой-сайт.ru/korzina то новая строка будет выглядеть if(window.location.pathname == "/korzina"){ location.reload(); }Теперь после обновления количества хоть на мониторе мышкой, хоть на телефоне страница будет перезагружена и мы увидим её обновлённый вариант. А если мы будем находиться на любой другой странице сайта, то условие не будет срабатывать и всё будет работать как и раньше. Если у адреса после названия раздела есть «хвост» типа мой-сайт.ru/korzina&что-то#еще-что-то то смотрите в поисковике функцию Location JS P.S. Совсем не программист, просто интересуюсь. Надеюсь, что кому-то сэкономил время. Посмотреть как работает можно здесь Вопросы / Динамическое обновление основной корзины 6 0 1
mxBoard: канбан-доска для команд, людей и ИИ-агентов в MODX 3 Если ты пришлёшь мне весь запрос с заголовками и телом, смогу помочь
Плагин EnvBadge: визуальный индикатор окружения в админке MODX3 Лучше автоматический ci/cd настроить и не править прод напрямую. Это самый безопасный вариант. Другое дело, что далеко не каждый владелец сайта и далеко не каждый сайт готовы в авт...
[videoGallery] Видео галерея YouTube, Vimeo Невозможно установить пакет с подписью: videogallery-1.4.0-beta Ошибка установки Error в /core/packages/videogallery-1.4.0-beta/modCategory/7fc931a7772edc9752c16e9c41eb5e52.reso...
Релиз miniShop2 ver. 4.4.1 & 4.4.2 Подскажите пожалуйста, может я что-то не знаю или упустил. Но есть ли решение по глюку с radio? Указываешь свое radio c одинаковым name и в результате при переключении получаешь вс...
MaxNotify Обновление компонента 1.3.0-pl (22.07.2026) — добавлено автоматическое получение полей через msOrder->toArray(); — массивы и объекты безопасно пропускаются; — стандартные...
MyFavorites MyFavorites — 3.0.0-beta Первая версия для MODX Revolution 3.x — компонент полностью переписан с нуля (PHP >= 8.4, namespaced-ядро MODX 3, PSR-4, сервис-ориентированная архит...
А если у меня задача другая, то…
И тут пришла мысль: а почему бы не перезагрузить корзину средствами JS при наступлении события?
А какое событие у нас наступает? Правильно — изменяется количество ВСЕГДА когда мы что-то делаем в корзине.
В общем берём файл по адресу
assets/components/minishop2/js/web/default.js
или его изменённую версию (если она у вас есть)
и ищем строки:
В этих строках написано: если количество меньше 1 (одного), то перезагрузить страницу.
Меняем на строки:
В этих строках написано: если адрес раздела сайта, в котором мы находимся, совпадает с /cart то перезагрузить страницу.
Полный адрес у меня выглядит так:
мой-сайт.ru/cart
Соответственно, если адрес
мой-сайт.ru/korzina
то новая строка будет выглядеть
Теперь после обновления количества хоть на мониторе мышкой, хоть на телефоне страница будет перезагружена и мы увидим её обновлённый вариант.
А если мы будем находиться на любой другой странице сайта, то условие не будет срабатывать и всё будет работать как и раньше.
Если у адреса после названия раздела есть «хвост» типа
мой-сайт.ru/korzina&что-то#еще-что-то
то смотрите в поисковике функцию Location JS
P.S. Совсем не программист, просто интересуюсь.
Надеюсь, что кому-то сэкономил время.
Посмотреть как работает можно здесь