Jump to content
Sign in to follow this  
alexst

[HowTo] Расчет стоимости и сроков доставки ПЭК

Recommended Posts

Для нашего интернет-магазина появилась потребность в виджете ПЭКа, который рассчитывает стоимость и сроки доставки. При этом нам не хотелось добавлять эти данные в заказ, но нужно было чтобы клиент сам мог ознакомиться со стоимостью доставки. 

 

Предлагаю вашему вниманию альтернативу платному модулю ПЭКа. 

 2017-02-24_153655.png.b820989ab4dc958db4febfa881207ac0.png

 

Сам информер взят отсюда, но сделаны некоторые модификации, чтобы объем и масса брались из карточки товара. 

Работает на OC 2.3 (на других - не проверялось). 

Пример магазина с таким виджетом - здесь. Город доставки определяется автоматически.

 

1. Необходимо вставить в /catalog/controller/product/product.php после $data['points'] = $product_info['points']; следующий код:

			$data['weight'] = $this->weight->format($product_info['weight'], $product_info['weight_class_id']);
			$data['length'] = $this->length->format($product_info['length'], $product_info['length_class_id']);
			$data['width']  = $this->length->format($product_info['width'], $product_info['length_class_id']);
			$data['height'] = $this->length->format($product_info['height'], $product_info['length_class_id']);

2. В файл /catalog/view/theme/default2/template/product/product.tpl (вместо default2 - папка с вашей темой) добавляем в нужно нам место следующее: 

		  <script>
			var pec_goods = [],
			pec_informer_size = "horizontal", // тип информера
			pec_from = "-483", // город отправки
			pec_to = "auto", // город доставки
			pec_insurance = "", // сумма для страхования
			pec_packing = ""; // тип упаковки
			var pec_goods_my = "<?php if(empty($length)){echo " x ";}else{echo $length;}?>/<?php if(empty($width)){echo " x ";}else{echo $width;}?>/<?php if(empty($height)){echo " x ";}else{echo $height;}?><?php if ($weight > 0) { ?>/<?php echo $weight;} ?>"; // габариты, объем, вес
			var test = '';
			pec_goods_my.split("/").forEach(function(item, i, arr) {
				test = test.replace(",", '');
				test += item.substr(0, item.length - 2) + '/';
			});
			var test = test.split("/");
			pec_goods[0] = '';
			for (var i = 0; i < 3; i++) {
				test[i] = test[i] / 1000;
				pec_goods[0] += test[i] + '/';
			}
			pec_goods[0] += (test[0] * test[1] * test[2]) + "/" + test[3];
			console.log(pec_goods[0]);		
	</script><script src="https://pecom.ru/business/developers/js_informer/get_informer.js" charset="utf-8"></script>

В моем случае я добавил код после <div class="addthis_inline_share_toolbox"></div>, чтобы виджет отображался сразу после AddThis. Также необходимо изменить город отправки, указав в строке pec_from нужное значение. Получить его можно здесь. Для Москвы: pec_from = "-446"

 

3. В товарах необходимо добавить информацию о размере упаковки товара и весе. Размер указывается в миллиметрах. Пример:

2017-02-24_154801.thumb.png.46b0c34bfe3c3572bb758b6e6b2ba682.png

4. После редактирования имеет смысл почистить кеш сайта.

 

Принимаем критику.

Edited by alexst

Share this post


Link to post
Share on other sites

здравствуйте. а как отобразить в корзине не подскажите? чтобы данные товара передавались в корзину?

 

Share this post


Link to post
Share on other sites

Не могу убрать см, кг вот ссылка на сайте sanki57.ru

Edited by dem1d

Share this post


Link to post
Share on other sites

Для 2.3 переделал не много

          $data['length'] = number_format($product_info['length'], 0);
            $data['width'] = number_format($product_info['width'], 0);
            $data['height'] = number_format($product_info['height'], 0);
            $data['weight'] = number_format($product_info['weight'], 0);

 

On 24.02.2017 at 3:53 PM, alexst said:

Для нашего интернет-магазина появилась потребность в виджете ПЭКа, который рассчитывает стоимость и сроки доставки. При этом нам не хотелось добавлять эти данные в заказ, но нужно было чтобы клиент сам мог ознакомиться со стоимостью доставки. 

 

Предлагаю вашему вниманию альтернативу платному модулю ПЭКа. 

 2017-02-24_153655.png.b820989ab4dc958db4febfa881207ac0.png

 

Сам информер взят отсюда, но сделаны некоторые модификации, чтобы объем и масса брались из карточки товара. 

Работает на OC 2.3 (на других - не проверялось). 

Пример магазина с таким виджетом - здесь. Город доставки определяется автоматически.

 

1. Необходимо вставить в /catalog/controller/product/product.php после $data['points'] = $product_info['points']; следующий код:

			$data['weight'] = $this->weight->format($product_info['weight'], $product_info['weight_class_id']);
			$data['length'] = $this->length->format($product_info['length'], $product_info['length_class_id']);
			$data['width']  = $this->length->format($product_info['width'], $product_info['length_class_id']);
			$data['height'] = $this->length->format($product_info['height'], $product_info['length_class_id']);

2. В файл /catalog/view/theme/default2/template/product/product.tpl (вместо default2 - папка с вашей темой) добавляем в нужно нам место следующее: 

		  <script>
			var pec_goods = [],
			pec_informer_size = "horizontal", // тип информера
			pec_from = "-483", // город отправки
			pec_to = "auto", // город доставки
			pec_insurance = "", // сумма для страхования
			pec_packing = ""; // тип упаковки
			var pec_goods_my = "<?php if(empty($length)){echo " x ";}else{echo $length;}?>/<?php if(empty($width)){echo " x ";}else{echo $width;}?>/<?php if(empty($height)){echo " x ";}else{echo $height;}?><?php if ($weight > 0) { ?>/<?php echo $weight;} ?>"; // габариты, объем, вес
			var test = '';
			pec_goods_my.split("/").forEach(function(item, i, arr) {
				test = test.replace(",", '');
				test += item.substr(0, item.length - 2) + '/';
			});
			var test = test.split("/");
			pec_goods[0] = '';
			for (var i = 0; i < 3; i++) {
				test[i] = test[i] / 1000;
				pec_goods[0] += test[i] + '/';
			}
			pec_goods[0] += (test[0] * test[1] * test[2]) + "/" + test[3];
			console.log(pec_goods[0]);		
	</script><script src="https://pecom.ru/business/developers/js_informer/get_informer.js" charset="utf-8"></script>

В моем случае я добавил код после <div class="addthis_inline_share_toolbox"></div>, чтобы виджет отображался сразу после AddThis. Также необходимо изменить город отправки, указав в строке pec_from нужное значение. Получить его можно здесь. Для Москвы: pec_from = "-446"

 

3. В товарах необходимо добавить информацию о размере упаковки товара и весе. Размер указывается в миллиметрах. Пример:

2017-02-24_154801.thumb.png.46b0c34bfe3c3572bb758b6e6b2ba682.png

4. После редактирования имеет смысл почистить кеш сайта.

 

Принимаем критику.

 

Share this post


Link to post
Share on other sites
В 31.10.2017 в 08:46, dem1d сказал:

Для 2.3 переделал не много

Не знаю, у меня и так 2.3. Работает и без Ваших правок)

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Similar Content

    • By Prorab337
      1 400.00 руб
      Скачать/Купить дополнение


      "Новая Почта API" - модуль доставки для OpenCart
      Данный модуль по праву считается лучшим решением для организации доставки Новой Почтой в Вашем интернет-магазине. Дополнение решает практически все задачи, которые возникают при работе с Новой Почтой и является отличным помощником на любом этапе работы с заказами. Кроме стандартных функций модуля доставки имеются инструменты для работы с Экспресс Накладными. Также доступны две функции калькулятора: расчет стоимости и срока доставки. Все расчеты происходят при помощи API, что гарантирует получение самых точных данных.
      Дополнение также имеет ряд функций, которые за Вас в автоматическом режиме выполняют ежедневную рутинную работу: рассылка уведомлений с номером накладной, смена статусов заказа, напоминание о не забранных посылках и т.д.
      Данный модуль не перезаписывает и не удаляет стандартные файлы и таблицы базы OpenCart. В работе модуля используется API «Новой Почты», что позволяет всегда иметь актуальную информацию о городах, отделениях, отправлениях и т.д., а также взаимодействовать непосредственно с Новой Почтой используя большое количество готовых решений, предоставляемых компанией. И это не все возможности модуля, функционал постоянно расширяется и улучшается. Приобретая модуль Вы будете экономить уйму времени и значительные денежные средства на обработке заказов и разработке аналогичного функционала.
       
      По ссылкам, предоставленным ниже, можно перейти на демонстрационный сайт. Для доступа в админ-панель используйте следующие данные: логин и пароль - demo
       
      Панель администратора
       
       Создание/редактирование накладной
       
       Список накладных
       
      Магазин
      Функциональные возможности Основные возможности
       большое количество настроек  удобное ручное и автоматическое обновление городов, отделений и другой справочной информации  создание, редактирование и удаление накладных  максимальное заполнение формы накладной в автоматическом режиме  скачивание, настройка печати, печать накладных и маркировок  просмотр списка накладных непосредственно в админ-панели  автоматическое отслеживание отправлений, смена статусов заказа и отправка уведомлений  самый точный предварительный расчет стоимости доставки  расчет ориентировочного срока доставки  автоматическое определение и учет типа упаковки  автоматический расчет параметров отправления  выбор и поиск городов, отделений. Возможность задать дополнительные поля для адресной доставки  
      Поддерживаемые языки украинский русский английский В некоторых методах API заявлена поддержка украинского, русского и английского языков. На практике же реализована 100% поддержка только украинского языка. Названия городов и отделений Новой Почты доступны на украинском и русском языках. Модуль автоматически показывает нужный перевод в зависимости от настроек OpenCart или предпочтений покупателя во время оформления заказа.
      Совместимость OpenCart v. 1.5.Х.Х, 2.X.X.Х, 3.Х.Х.Х (также сборки на базе OpenCart соответствующих версий) формы заказа: Simple checkout & registration (максимальный функционал), стандартное оформление заказов, Ajax Quick Checkout, Journal Quick Checkout, Fast Order, Quick checkout, Revolution Checkout, Uni Checkout (только выбор города и отделения) модули отправки уведомлений: стандартная отправка e-mail, OCHELP - СМС уведомления для админа, клиента, SmsFly order редакторы заказов: OrderPro - Расширенный редактор заказа Возможно потребуется адаптация для конкретных версий. Адаптацию для других модулей и шаблонов выполним по запросу за ДОПОЛНИТЕЛЬНУЮ ПЛАТУ.
      Лицензия  приобретая дополнение Вы получаете пожизненный доступ к бесплатным обновлениям и бесплатную техническую поддержку в течении года  лицензия действует только на один домен и на все его поддомены, и тестовые сайты  информация о порядке получения лицензии доступна после установки модуля  активация лицензии происходит в течении нескольких часов после покупки  
      Дополнение является авторской разработкой и защищено соответствующими правами
      Требования ionCube Loader версии 5.0 и выше PHP библиотека cURL PHP версии 5.3 и выше  
       
      Перед установкой на работающем интернет-магазине рекомендуем выполнить установку и тестирование модуля на тестовом сайте или поддомене!
       
      Детальная инструкция по установке, настройке, обновлению и удалению модуля доступна в архиве в файле instruction.html
      Добавил Prorab337 Добавлено 22.06.2015 Категория Доставки Системные требования PHP библиотека CURL, PHP версии 5.3 и выше Метод активации По запросу в ЛС
      По запросу на почту
      По скайпу
      По емейлу
      Автоматическая активация
      Через официальный сайт дополнения Ioncube Loader Требуется OpenCart 3.0
      2.3
      2.2
      2.1
      2.0
      1.5.6.4
      1.5.6.3
      1.5.6.2
      1.5.6.1
      1.5.6
      1.5.5.1
      1.5.5
      1.5.4.1
      1.5.3.1 ocStore 3.0
      2.3
      2.2
      2.1
      1.5.5.1.2
      1.5.5.1.1
      1.5.5.1
      1.5.4.1.2
      1.5.4.1.1
      1.5.4.1
      1.5.3.1
      1.5.2.1
      1.5.1.3 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1
      OcShop 2.0.3.х
      OcShop 1.5.6.4.х Обращение к серверу разработчика Да Старая цена 2000  
    • By Prorab337
      1 400.00 руб
      Скачать/Купить дополнение


      "Новая Почта API" - модуль доставки для OpenCart 1.5
      Данный модуль по праву считается лучшим решением для организации доставки Новой Почтой в Вашем интернет-магазине. Дополнение решает практически все задачи, которые возникают при работе с Новой Почтой и является отличным помощником на любом этапе работы с заказами. Кроме стандартных функций модуля доставки имеются инструменты для работы с Экспресс Накладными. Также доступны две функции калькулятора: расчет стоимости и срока доставки. Все расчеты происходят при помощи API, что гарантирует получение самых точных данных.
      Дополнение также имеет ряд функций, которые за Вас в автоматическом режиме выполняют ежедневную рутинную работу: рассылка уведомлений с номером накладной, смена статусов заказа, напоминание о не забранных посылках и т.д.
      Данный модуль не перезаписывает и не удаляет стандартные файлы и таблицы базы OpenCart. В работе модуля используется API «Новой Почты», что позволяет всегда иметь актуальную информацию о городах, отделениях, отправлениях и т.д., а также взаимодействовать непосредственно с Новой Почтой используя большое количество готовых решений, предоставляемых компанией. И это не все возможности модуля, функционал постоянно расширяется и улучшается. Приобретая модуль Вы будете экономить уйму времени и значительные денежные средства на обработке заказов и разработке аналогичного функционала.
       
      По ссылкам, предоставленным ниже, можно перейти на демонстрационный сайт. Для доступа в админ-панель используйте следующие данные: логин и пароль - demo
       
      Панель администратора
       
       Создание/редактирование накладной
       
       Список накладных
       
      Магазин
      Функциональные возможности Основные возможности
       большое количество настроек  удобное ручное и автоматическое обновление городов, отделений и другой справочной информации  создание, редактирование и удаление накладных  максимальное заполнение формы накладной в автоматическом режиме  скачивание, настройка печати, печать накладных и маркировок  просмотр списка накладных непосредственно в админ-панели  автоматическое отслеживание отправлений, смена статусов заказа и отправка уведомлений  самый точный предварительный расчет стоимости доставки  расчет ориентировочного срока доставки  автоматическое определение и учет типа упаковки  автоматический расчет параметров отправления  выбор и поиск городов, отделений. Возможность задать дополнительные поля для адресной доставки  
      Поддерживаемые языки украинский русский английский В некоторых методах API заявлена поддержка украинского, русского и английского языков. На практике же реализована 100% поддержка только украинского языка. Названия городов и отделений Новой Почты доступны на украинском и русском языках. Модуль автоматически показывает нужный перевод в зависимости от настроек OpenCart или предпочтений покупателя во время оформления заказа.
      Совместимость OpenCart v. 1.5.Х.Х, 2.X.X.Х, 3.Х.Х.Х (также сборки на базе OpenCart соответствующих версий) формы заказа: Simple checkout & registration (максимальный функционал), стандартное оформление заказов, Ajax Quick Checkout, Journal Quick Checkout, Fast Order, Quick checkout, Revolution Checkout, Uni Checkout (только выбор города и отделения) модули отправки уведомлений: стандартная отправка e-mail, OCHELP - СМС уведомления для админа, клиента, SmsFly order редакторы заказов: OrderPro - Расширенный редактор заказа Возможно потребуется адаптация для конкретных версий. Адаптацию для других модулей и шаблонов выполним по запросу за ДОПОЛНИТЕЛЬНУЮ ПЛАТУ.
      Лицензия  приобретая дополнение Вы получаете пожизненный доступ к бесплатным обновлениям и бесплатную техническую поддержку в течении года  лицензия действует только на один домен и на все его поддомены, и тестовые сайты  информация о порядке получения лицензии доступна после установки модуля  активация лицензии происходит в течении нескольких часов после покупки  
      Дополнение является авторской разработкой и защищено соответствующими правами
      Требования ionCube Loader версии 5.0 и выше PHP библиотека cURL PHP версии 5.3 и выше  
       
      Перед установкой на работающем интернет-магазине рекомендуем выполнить установку и тестирование модуля на тестовом сайте или поддомене!
       
      Детальная инструкция по установке, настройке, обновлению и удалению модуля доступна в архиве в файле instruction.html
      Добавил Prorab337 Добавлено 30.06.2015 Категория Доставки Системные требования PHP библиотека сURL, PHP версии 5.3 и выше Метод активации По запросу в ЛС
      По запросу на почту
      По скайпу
      По емейлу
      Автоматическая активация
      Через официальный сайт дополнения Ioncube Loader Требуется OpenCart 3.0
      2.3
      2.2
      2.1
      2.0
      1.5.6.4
      1.5.6.3
      1.5.6.2
      1.5.6.1
      1.5.6
      1.5.5.1
      1.5.5
      1.5.4.1
      1.5.3.1 ocStore 3.0
      2.3
      2.2
      2.1
      1.5.5.1.2
      1.5.5.1.1
      1.5.5.1
      1.5.4.1.2
      1.5.4.1.1
      1.5.4.1
      1.5.3.1
      1.5.2.1
      1.5.1.3 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1
      OcShop 2.0.3.х
      OcShop 1.5.6.4.х Обращение к серверу разработчика Да Старая цена 2000  
    • By SirGrey
      Виджет Instagram для вашего сайта.
       
      Модуль выводит ленту инстаграм в виде карусели.
      При необходимости можно изменить шаблон для вывода в виде сетки.
       
      Изображения в виде карусели Автоматическое обновление Размер изображений Кеширование Ссылка на профиль и на изображения Работает без сторонних подписок  
      Внимание
       
      Для работы модуля необходимо получить токен.
       
      Демо
       
      http://instagram.proopencart.com/index.php?route=product/category&path=18
      http://instagram.proopencart.com/index.php?route=product/product&path=18&product_id=47
       
       

       

       
      Версия OpenCart 3.x
       
      Бесплатная разработка под другие версии OpenCart
      2 - 3 рабочих дня
       
      Лицензия
      Модуль работает по лицензии (один домен + тестовый домен), 
      Тема письма: Активация модуля Simple Instagram Widget
      В сообщении укажите ID заказа, доменное имя и тестовый домен если необходимо.
       
       
    • By SirGrey
      600.00 руб
      Скачать/Купить дополнение


      Simple Instagram Widget - Виджет инстаграм для сайта
      Виджет Instagram для вашего сайта.
       
      Модуль выводит ленту инстаграм в виде карусели.
      При необходимости можно изменить шаблон для вывода в виде сетки.
       
      Изображения в виде карусели Автоматическое обновление Размер изображений Кеширование Ссылка на профиль и на изображения Работает без сторонних подписок  
      Внимание
       
      Для работы модуля необходимо получить токен.
       
      Демо
       
      http://instagram.proopencart.com/index.php?route=product/category&path=18
      http://instagram.proopencart.com/index.php?route=product/product&path=18&product_id=47
       
       

       

       
      Версия OpenCart 3.x
       
      Бесплатная разработка под другие версии OpenCart
      2 - 3 рабочих дня
       
      Лицензия
      Модуль работает по лицензии (один домен + тестовый домен), 
      Тема письма: Активация модуля Simple Instagram Widget
      В сообщении укажите ID заказа, доменное имя и тестовый домен если необходимо.
       
       
      Добавил SirGrey Добавлено 16.11.2020 Категория Меню, дизайн, внешний вид Системные требования Ioncube Loader Метод активации По запросу в ЛС
      По запросу на почту
      По емейлу Ioncube Loader Требуется OpenCart 3.0 ocStore 3.0 OpenCart.Pro, ocShop Не проверялось Обращение к серверу разработчика Нет Старая цена 0  
    • By Prorab337
      Данный модуль по праву считается лучшим решением для организации доставки Новой Почтой в Вашем интернет-магазине. Дополнение решает практически все задачи, которые возникают при работе с Новой Почтой и является отличным помощником на любом этапе работы с заказами. Кроме стандартных функций модуля доставки имеются инструменты для работы с Экспресс Накладными. Также доступны две функции калькулятора: расчет стоимости и срока доставки. Все расчеты происходят при помощи API, что гарантирует получение самых точных данных.
      Дополнение также имеет ряд функций, которые за Вас в автоматическом режиме выполняют ежедневную рутинную работу: рассылка уведомлений с номером накладной, смена статусов заказа, напоминание о не забранных посылках и т.д.
      Данный модуль не перезаписывает и не удаляет стандартные файлы и таблицы базы OpenCart. В работе модуля используется API «Новой Почты», что позволяет всегда иметь актуальную информацию о городах, отделениях, отправлениях и т.д., а также взаимодействовать непосредственно с Новой Почтой используя большое количество готовых решений, предоставляемых компанией. И это не все возможности модуля, функционал постоянно расширяется и улучшается. Приобретая модуль Вы будете экономить уйму времени и значительные денежные средства на обработке заказов и разработке аналогичного функционала.
       
      По ссылкам, предоставленным ниже, можно перейти на демонстрационный сайт. Для доступа в админ-панель используйте следующие данные: логин и пароль - demo
       
      Панель администратора
       
       Создание/редактирование накладной
       
       Список накладных
       
      Магазин
      Функциональные возможности Основные возможности
       большое количество настроек  удобное ручное и автоматическое обновление городов, отделений и другой справочной информации  создание, редактирование и удаление накладных  максимальное заполнение формы накладной в автоматическом режиме  скачивание, настройка печати, печать накладных и маркировок  просмотр списка накладных непосредственно в админ-панели  автоматическое отслеживание отправлений, смена статусов заказа и отправка уведомлений  самый точный предварительный расчет стоимости доставки  расчет ориентировочного срока доставки  автоматическое определение и учет типа упаковки  автоматический расчет параметров отправления  выбор и поиск городов, отделений. Возможность задать дополнительные поля для адресной доставки  
      Поддерживаемые языки украинский русский английский В некоторых методах API заявлена поддержка украинского, русского и английского языков. На практике же реализована 100% поддержка только украинского языка. Названия городов и отделений Новой Почты доступны на украинском и русском языках. Модуль автоматически показывает нужный перевод в зависимости от настроек OpenCart или предпочтений покупателя во время оформления заказа.
      Совместимость OpenCart v. 1.5.Х.Х, 2.X.X.Х, 3.Х.Х.Х (также сборки на базе OpenCart соответствующих версий) формы заказа: Simple checkout & registration (максимальный функционал), стандартное оформление заказов, Ajax Quick Checkout, Journal Quick Checkout, Fast Order, Quick checkout, Revolution Checkout, Uni Checkout (только выбор города и отделения) модули отправки уведомлений: стандартная отправка e-mail, OCHELP - СМС уведомления для админа, клиента, SmsFly order редакторы заказов: OrderPro - Расширенный редактор заказа Возможно потребуется адаптация для конкретных версий. Адаптацию для других модулей и шаблонов выполним по запросу за ДОПОЛНИТЕЛЬНУЮ ПЛАТУ.
      Лицензия  приобретая дополнение Вы получаете пожизненный доступ к бесплатным обновлениям и бесплатную техническую поддержку в течении года  лицензия действует только на один домен и на все его поддомены, и тестовые сайты  информация о порядке получения лицензии доступна после установки модуля  активация лицензии происходит в течении нескольких часов после покупки  
      Дополнение является авторской разработкой и защищено соответствующими правами
      Требования ionCube Loader версии 5.0 и выше PHP библиотека cURL PHP версии 5.3 и выше  
       
      Перед установкой на работающем интернет-магазине рекомендуем выполнить установку и тестирование модуля на тестовом сайте или поддомене!
       
      Детальная инструкция по установке, настройке, обновлению и удалению модуля доступна в архиве в файле instruction.html
  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.