msGdePosilka - отслеживание перемещений посылок
Всем привет, ребята, представляю вашему вниманию новый компонент работающий с api сервиса «ГдеПосылка»:

Что может:
Галерея фотографий:
Установка:
Также должно появиться поле и новый таб в модальном окне заказа, если не появился нажмите ctrl+f5

Установка на фронтенде:

Что может:
- Интегрируется в заказы minishop2 добавляя новый таб в модальное окно заказа расширяя таблицу msOrder и добавляя новое поле
- Собирает данные о перемещении посылки каждого из заказа
- Отслеживает только те посылки, которые находятся в процессе доставки, перестает отслеживать посылки, которые были вручены адресату
- Cron скрипт, который следит за базой перемещений и оповещает по email ваших клиентов при изменении статуса посылки
- Кастомный вывод заказов в личном кабинете пользователя вот такой, только улучшеный
- Вывод истории перемещений на фронтенд
Галерея фотографий:
Установка:
- Первым делом получаем api от сервиса «ГдеПосылка»
- Устанавливаем компонент
- Заходим в системные настройки и в поле gdePosilkaToken вводим выданный нам токен

- В gdePosilkaMailSubject можно поменять тему письма, которое будет приходить пользователю
- В gdePosilkaDebugEmail можно указать свой email для тестирования компонента
- Поменяв gdePosilkaDebug на «да» все письма будут уходить не пользователям, а вам на личную почту,
это необходимо для тестирования компонента - Далее ставим в крон задание для автоматического обновления базы (путь до скрипта /core/components/msgdeposilka/cron/update.php), это выглядит примерно так:
Я поставил обновление на раз в 7 часов, по мне это самое оптимальное время обновления, ниже ставить не рекомендую, если у вас большое количество заказов, зачем дразнить щедрые лимиты сервиса «ГдеПосылка», не так ли? :) - Письмо пользователям вы можете редактировать через чанк gdePosilkaMail
{if $track}
Ваш трек номер: {$track} <br />
Мы будем оповещать вас о перемещениях вашей посылки по email, а также историю перемещений вы можете посмотреть в личном кабинете
{/if}Также должно появиться поле и новый таб в модальном окне заказа, если не появился нажмите ctrl+f5

Установка на фронтенде:
- Подключаем скрипты и стили компонента, а также подключаем FancyBox3, если он не был подключен ранее
<script src="/assets/components/msgdeposilka/js/web/customOrders.js"></script> <link rel="stylesheet" href="/assets/components/msgdeposilka/css/web/customOrders.css"> <script src="https://cdnjs.cloudflare.com/ajax/libs/fancybox/3.1.25/jquery.fancybox.min.js"></script> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/fancybox/3.1.25/jquery.fancybox.min.css" /> - На странице покупок пользователей выводим чанк
[[!$UserOrders]]
Немного оффтопа о бесплатной раздаче, жизни, вселенной и вообще:
Я писал что не буду выкладывать компонент в modstore и доведу серию обучающих статей до конца, но увы, у заказчика появилось множество идей по ходу разработки, а тот, кто платит и музыку заказывает как известно. В общем сложность компонента давно перевалила за границу «Для новичков» и даже если бы я пытался описать как сделать также, то вышла бы копия статьи Василия, а зачем писать о том, о чем уже написали?
В общем чтобы не обижались люди, которые ждали продолжение статьи и проявляли активность в комментариях — отпишитесь тут, я пришлю вам пакет дополнения на почту + раздам первым 3ем комментаторам, дочитавшим до конца :) Просто напишите Хочу компонент
Компонент появится в магазине в течении трех дней, я надеюсь
Внимание! Корректность верстки вывода заказов на фронтенд я НЕгарантирую (хоть и тестировал на чистом проекте), скорее всего что-то, но вам придется подправить, потому что я не пользуюсь вашими бутстрапами и вся верстка сделана на флексах
Комментарии: 29
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Этапы движения посылки можно как то сопоставить со статусами заказа?
Например, необходимо, что бы статус заказа менялся на «Выполнен» после того как посылка была вручена.
Спасибо за отличный компонент!
Пытаюсь настроить, но при запуске скрипта по крону выдаёт следующее:
Буду благодарен за помощь!
t.me/slexkap
Еще вопрос, можно ли как то вывести поле с треком на страницу заказа для клиента?
Я вывожу список заказов с помощью msListOrders и хочу в него встроить вывод трека и отображение пути посылки.