Задать вопрос Связаться с нами
  • Главная
  • Услуги
    • Исправление ошибок
    • Доработка сайтов
    • Обслуживание сайтов
    • Техподдержка сайтов
    • Веб-разработка
    • Интернет-магазины
  • Модули
    • Антирутин
    • SEO - мастер
    • SMS-уведомления
    • Утилиты от «Webdebug»
    • SMS-сообщения (Lite)

    • Все наши модули

    • Все модули Битрикс:Marketplace
  • Акции
  • Поддержка
  • Блог
  • О нас
    • Отзывы
    • Новости
    • Реквизиты

    • Контакты
  • Главная
  • Услуги
    • Исправление ошибок
    • Доработка сайтов
    • Обслуживание сайтов
    • Техподдержка сайтов
    • Веб-разработка
    • Интернет-магазины
  • Модули
    • Антирутин
    • SEO - мастер
    • SMS-уведомления
    • Утилиты от «Webdebug»
    • SMS-сообщения (Lite)

    • Все наши модули

    • Все модули Битрикс:Marketplace
  • Акции
  • Поддержка
  • Блог
  • О нас
    • Отзывы
    • Новости
    • Реквизиты

    • Контакты
Главная
Модули «1С-Битрикс: Маркетплейс»
Категория: Для интернет-магазина
Стоимость доставки по зонам
ctweb.yandexdelivery

Стоимость доставки по зонам

Разработчиком данного модуля является СитиВеб
Купить: 10 000 руб. Онлайн-демо
  • Описание
  • Установка
  • История
  • Техподдержка

  • Подходящие редакции 1С-Битрикс: Малый бизнес, Бизнес
  • Включает в себя: Модуль
  • Категории: Для интернет-магазина, Службы доставки, Корзина, покупка
  • Название компании-партнера: СитиВеб
  • Последняя версия: 1.6.2
  • Дата обновления: 26.08.2022
  • Дата публикации: 27.04.2018
  • Число установок: 500 - 999 раз
  • Адаптивность: Да
  • Поддержка композита: Да
  • Совместимо с Сайты24: Нет

Модуль позволяет рассчитать стоимости доставки, на основе Яндекс.Карт, в зависимости от района(зоны) и удаленности от склада.
Работать с модулем очень просто:
  1. создаете пункты отправления;
  2. создаете зоны (районы);
  3. назначаете стоимость для каждой зоны;
  4. активируете модуль доставки;
  5. готово :)


#####Зоны доставки:
Зоны доставки - главная особенность модуля.
Пользователь создает зоны, в которые магазин доставляет заказы. За пределы этих областей доставка не осуществляется.

#####Создание и редактирование:
- Указывается область на Яндекс.Карте при помощи полигонов;
   
#####Импорт:
- Для упрощения создания зон, можно воспользоваться импортом из файла GEO JSON
- Можно импортировать сразу несколько зон, либо для конкретной зоны;
- Алогритм импорта ищет все объекты geometry в файле импорта со свойством type = "Polygon"
- При импорте можно указать какие области импортировать (предлагается выбор)

#####Цены:
- Можно указать фиксированную цену доставки в зону (Минимальная цена);
- Можно указать цену доставки за километр (расстояние рассчитывается по проложенному пути);
- Можно указать минимальную цену заказа для которой зона доставки будет доступна;
- Можно указать цену, для которой доставка будет бесплатной;

#####Прочее:
- Можно привязать зону доставки к определенным складам. Доставка будет рассчитываться только от них;
- Для зоны доставки можно указать свой цвет;
- Зону можно деактивировать, если она пока не нужна;

#####Склады:
Есть 2 режима складов:
1. Склады магазина
2. Кастомные склады

Режими различаются только местом хранения информации о складах: кастомные склады хранятся в таблице модуля.
Склады нужны для рассчета ближайшего склада к указанной пользователем точке.

#####Шаблоны:
Для вывода карты используется компонент ctweb:yandexdelivery.

По-умолчанию есть 2 шаблона:
1. .default - Вы можете добавить его на любую страницу;
   - На страницу можно помещать несколько компонентов одновременно.
2. order - Автоматически добавляется на странице оформления заказа компонента sale.order.ajax;
   - Для указания параметров в шаблоне order, воспользуйтесь файлом parameters.php в шаблоне компонента;

Кастомизация:
- Вы можете скопировать шаблон и поменять его верстку и стили так, как Вам нужно;
- Единственное условие - проставлять для тегов определенные ID - они описаны в component.php и вверху шаблона;
- В стандартных шаблонах можно найти примеры событий, на которые подключить выполнение функций;
- Так же, можно расширять BX.Ctweb.YandexDelivery.Controller в script.js шаблона (пример в шаблоне order);

#####Расчет:
- Модуль предоставляет событие OnYandexDeliveryCalculatePrice($distance, $regionID, $storageID) для модификации результата;
- В настройках модуля можно указать свойство заказа, куда будет записана информация о выбранной пользователем точки. Создайте свойство типа "Строка" для заказа. В этом свойстве указывается "Название склада", "Адрес точки" и "Координаты точки";
- Можно скопировать "/bitrix/modules/ctweb.yandexdelivery/tools/delivery_ctwebyandexdelivery.php" в "/bitrix/php_interface/include/sale_delivery/" для кастомизации расчета доставки.
Установка
Для установки модуля в ваш сайт нажмите "Установить" и следуйте указаниям мастера установки модулей.

После установки
Далее переходим в настройки модуля:
Настройки → Настройки продукта → Настройки модулей → Стоимость доставки в зависимости от удаленности

Выполняем необходимые настройки и смело переходим:
Магазин → Настройки → Службы доставки и добавляем новую автоматизированную службу доставки с обработчиком "Доставка Yandex delivery [ctweb.yandexdelivery]".

Внимание
В ходе последних событий у многих перестала работать карта из-за превышения количества запросов к API Яндекс.Карт.

Решение:
1. Установите обновление 1.4.0 или выше.
2. В настройках модуля "Управление структурой" нужно задать API KEY для Яндекс.Карт, который можно получить здесь: https://developer.tech.yandex.ru/
3. В шаблоне оформления заказа bitrix:sale.order.ajax есть подключение карты, но оно не использует данный ключ (ошибка Битрикса - для карт Google ключ подключается), а наш компонент из-за этого не может подключить карту с ключом (на отдельной странице подключается нормально). Нужно изменить подключение примерно так:

[/bitrix/templates/<Ваш шаблон сайта>/components/bitrix/sale.order.ajax/.default/template.php]

- $this->addExternalJs($templateFolder.'/scripts/yandex_maps.js');
- ?>
- <sc ript src="<?=$scheme?>://api-maps.yandex.ru/2.1.50/?load=package.full&lang=<?=$locale?>"></sc ript>

+ $this->addExternalJs($templateFolder.'/scripts/yandex_maps.js');
+ $apiKey = htmlspecialcharsbx(Main\Config\Option::get('fileman', 'yandex_map_api_key', ''));
+ ?>
+ <sc ript src="<?=$scheme?>://api-maps.yandex.ru/2.1.50/?apikey=<?=$apiKey?>&load=package.full&lang=<?=$locale?>"></sc ript>

Обратите внимание, что желательно использовать платную версию ключа, чтобы ключ не был заблокирован (см. условия использования: https://tech.yandex.ru/maps/commercial/doc/concepts/about-enterprise-docpage/)
  • 1.6.2, 26.08.2022
    Теперь после поиска по адресу точка устанавливается автоматически
  • 1.6.1,
    FIX: Исправлены ошибки на PHP8 FIX: Исправлена кодировка некторых файлов
  • 1.6.0,
    FIX: Исправлена проблема с компонентом после предыдущего обновления
  • 1.5.9,
    CHANGE: Теперь при выборе точки доставки вне зоны можно оформить заказ
  • 1.5.8, 18.12.2020
    Исправлена ошибка с подключением нескольких компонентов "ctweb:yandexdelivery" на странице
  • 1.5.7, 03.11.2020
    Исправлено: Вернули шаблон компонента
  • 1.5.6, 20.11.2020
    Исправлено: Не подключался компонент с картой в оформлении заказа, если на странице уже был компонент bitrix:sale.basket.order.ajax
  • 1.5.5, 19.11.2020
    Исправлено: иногда заполнялось свойство "Адрес доставки" другого типа плательщика
  • 1.5.4, 10.11.2020
    Исправлено: На многих сайтах пропадала форма в настройках
  • 1.5.3, 22.10.2020
    Исправлено: Не работал функционал установки точки по введенному в поиск адресу
  • 1.5.2, 19.10.2020
    Добавлено: Можно указать в настройках как буудет выбрана точка на карте: одиночным кликом или двойным
  • 1.5.1, 19.10.2020
    Исправлено: При расчете бесплатной доставки на карте показывалась минимальная стоимость
  • 1.5.0, 23.06.2020
    Исправлено: теперь можно скопировать класс CDeliveryCtwebYandexDelivery в php_interface/include/sale_delivery/
  • 1.4.9, 19.06.2020
    Добавлено: Теперь точка на карте выбирается, если выбрать адрес в поиске Исправлено: Не выбиралась точка, если цена доставки была меньше настройки Минимальная стоимость заказа.
  • 1.4.8, 01.06.2020
    Изменено: Шаблон 'order' компонента теперь использует собственный контроллер. Изменено: Контроллер в шаблоне 'order' теперь наследует общий котроллер, а не дополняет его Изменено: Контроллер в шаблоне 'order' теперь называется BX.Ctweb.YandexDelivery.OrderController Добавлено: Настройка "Поведение кнопки заказа". Теперь можно выбрать: скрывать кнопку "Оформить заказ" или отключать её (при клике будет переводить прокрутку до блока способов доставки) при не выбранной точке
  • 1.4.7, 13.04.2020
    Исправлено: Ошибки в изменении DOM-элементов в скрипте компонента
  • 1.4.6, 17.02.2020
    Исправлено: Опечатка в предложении "Показать/скрыть другие регионы" Изменено: Изменено название поля "Бесплатная доставка от" на "Бесплатная доставка от (руб)"
  • 1.4.5, 13.02.2020
    Исправлено: Неправильно подключался скрипт карты в админке
  • 1.4.4, 13.02.2020
    Исправлено: Размер поля для хранения координат точки склада увеличен до 255 символов. Ура, товарищи!
  • 1.4.3, 15.10.2019
    Исправлено: Ошибка в запросе выборки кастомного склада
  • 1.4.2, 11.10.2019
    Исправлено: Быборка регионов и складов по фильтру
  • 1.4.1, 03.10.2019
    Исправлено: Неправильная инициализация JS компонента.
  • 1.4.0, 02.10.2019
    Исправлено: Подключение API KEY для Яндекс.Карт из модуля "Управление структурой".
  • 1.3.9, 27.08.2019
    NEW: Добавлена галочка в редактировании региона "Показать/скрыть другие регионы"
  • 1.3.8, 27.08.2019
    FIX: Исправлена возможность фильтровать регионы по складу в компоненте через STORE.* FIX: Изменена привязка к складам. Больше нет опции "Любой". ПЕРЕСОХРАНИТЕ РЕГИОНЫ
  • 1.3.7, 08.05.2019
    FIX: Исправлена ошибка в скрипте, из-за которой были попытки расчета расстояния от складов без точки на карте.
  • 1.3.6, 07.02.2019
    FIX: json_encode to Json::encode FIX: json_decode to Json::decode
  • 1.3.5, 11.12.2018
    FIX: Подключение классов выведено в use
  • 1.3.4, 26.11.2018
    ADD: Подтверждение удаления кастомного склада/региона во избежание случайного удаления.
  • 1.3.3, 16.11.2018
    ADD: Обработка цены теперь во всех шаблонах компонента
  • 1.3.2, 10.11.2018
    CHANGE: Теперь регион со значением минимальной цены заказа отображается всегда При выборе такого региона пользователю показывается сообщение, если сумма заказа недостаточна для этого региона.
  • 1.3.1, 17.10.2018
    FIX: исправлены некоторые ошибки
  • 1.3.0, 11.10.2018
    CHANGES: Изменен компонент и шаблоны. Если Вы копировали шаблон, пожалуйста, посмотрите на новый. Теперь можно ставить несколько компонентов карты на одной странице! Используйте события, чтобы добавить свои действия после инициализации карты, расчета цены или получения адреса! Расширяйте класс контроллера карты, чтобы добавить свой функционал! Легко меняйте шаблон под Ваш сайт: классы более не используются в контроллере! FIX: В админке отображаются ID у складов и зон.
  • 1.2.2, 10.09.2018
    FIXED region creation bug
  • 1.2.1, 10.09.2018
    FIXED some bugs CHANGED module name
  • 1.2.0, 24.08.2018
    Обновления: Кастомные склады теперь в таблице. Добавлено описание для региона. Пока не используется, но доступно. К региону можно привязать склады.
  • 1.1.0, 14.08.2018
    Большое обновление. Обновления: 1. Новый интерфейс настройки регионов в админке. 2. Теперь карту с регионами можно расположить на странице. 3. Доступны события для расчета цены: OnYandexDeliveryCalculatePrice - при любом расчете цены, OnAfterYandexDeliveryCalculatePrice - при расчете цены доставки 4. Шаблоны компонентов более чистые, доступны BX события: yandexdelivery.calculate - при получении рассчитанной цены, yandexdelivery.address_response - при получении адреса точки. Примеры использования в шаблонах. 5. Добавлены ценовые пороги регионам: - Начиная с какой стоимости заказа доставка по регионы бесплатна; - Начиная с какой стоимости заказа регион доступен.
  • 1.0.8, 24.07.2018
    Исправление ошибок обновлений, переделка верстки публичного окошка CHANGES: События: OnYandexDeliveryCalculatePrice(&$price, $arProps) - при расчете цены OnAfterYandexDeliveryCalculatePrice(&$price, $arOrder, $arProps) - после расчета цены
  • 1.0.7, 18.07.2018
    NEW: Теперь можно импортировать полигон региона из файла geoJSON (Проверено на файлах из Yandex.Карт). NEW: Доступно событие OnYandexDeliveryPriceCalculate. Вызывается после рассчета цены, до отправки результата.
  • 1.0.6, 17.07.2018
    UPDATE: Оптимизировано время расчета расстояния UPDATE: Теперь при поиске не ставится точка
  • 1.0.5, 26.04.2018
    CHANGE: Теперь при клике за областью всплывает balloon с текстом CHANGE: Добавлены настройки модуля - тексты для модального окна CHANGE: Изменена верстка компонента
  • 1.0.4, 23.04.2018
    FIX: неизвестная проблема в админке
  • 1.0.3, 19.04.2018
    CHANGE: Изменено название модуля
  • 1.0.2, 18.04.2018
    FIX: permissions in module settings page
  • 1.0.1, 17.04.2018
    FIX: Ошибка в настройках модуля при окончании демо-версии FIX: Расчет доставки при окончании демо-версии
Техническая поддержка оказывается по будням, с 05:00 до 16:00(время московское).
Обращения принимаются на электронную почту: support@ctweb.ru.
Ссылки
  • Главная
  • Модули
  • Акции
  • Услуги
  • Отзывы
  • Блог
  • Новости
  • Контакты
  • Реквизиты
Поиск по сайту
Наши контакты

По всем вопросам обращайтесь:

Электронная почта: info@webdebug.ru

Telegram: webdebug

Форма обратной связи

Webdebug Bitrix certified
Webdebug QR-code
© ООО «Веб дебаг», 2011 – 2025. Политика конфиденциальности.
×
У Вас вопрос?
Загрузка ...
×
Связаться с нами
Загрузка ...
×
Установка модуля

Внимание! Повторная установка в демо-режиме приведет к окончанию демо‑режима и невозможности использовать модуль.

×
Запрос на приобретение
и настройку модуля
Загрузка ...