Перейти к содержанию
Форум поддержки пользователей VamShop

Модули доставки


Рекомендуемые сообщения

Можно ли сделать несколько зон доставок?

Например:

"зона 1" - стоимость доставки 800.00

"зона 2" - стоимость доставки 650.00

"зона 3" - стоимость доставки 500.00

Ссылка на сообщение
Поделиться на другие сайты
  • Ответов 93
  • Created
  • Последний ответ

Top Posters In This Topic

  • support

    45

  • lodos

    25

  • neorumancer

    6

  • enigmabob@mail.ru

    4

Реяь про модуль доставки zones?

Если да, то можно.

Удалите этот модуль в Админке - Модули - Доставка.

Затем откройте файл /includes/modules/zones.php

Там есть переменная num_zones

Укажите нужно количество зон, сохраните файл.

Затем снова установите модуль zones в Админке - Модули - Доставка.

Ссылка на сообщение
Поделиться на другие сайты

Дабы не плодить лишние темы...

Вопрос: Как изменить модуль доставки курьером с "доставка по Москве" на "Доставка по (другой город)" ? Просто в настройках модуля этого нет..

Спасибо.

Ссылка на сообщение
Поделиться на другие сайты

Затем снова установите модуль zones в Админке - Модули - Доставка.

Таким образом получил нужные три зоны. Но - мне нужны три зоны доставки по Москве (внутри МКАД, внутри ТТК, внутри Садового), а устанавливать можно "страны для зоны 1". Как следствие - страну не находит.

Если решать вопрос цены доставки "Табличным тарифом" - то придется отталкиваться только от веса или цены.

Если делать "Курьерская доставка" - то только одна цифра,без возможности выбора. Пока оставил максимальную цену курьерской доставки, не получится с зонами - буду каждому клиенту озвучивать стоимость отдельно :(

Можно ли сделать зоны доставки примерно такого вида:

Зона 1 (Название) - цена

Зона 2 (Название) - цена

и т.д.

Если можно, то как?

Можно ли завести новую страну с названием, например - "МКАД", и поставить для нее стоимость?

Ссылка на сообщение
Поделиться на другие сайты

Так а у Вас поле страна при регистрации отключена чтоли?!

Указывайте везде RU в опции страны.

Ссылка на сообщение
Поделиться на другие сайты

Сделай в модуле доставки "курьер" меню выбора:

Курьерская доставка:

внутри МКАД цена 1,

внутри ТТК цена 2,

внутри Садового цена 3

пусть покупатель сам определяет какую доставку он предпочитает: внутри МКАД, внутри ТТК, внутри Садового.

Для этого в методе quote нужно возвращать массив значений. Примеры - dhl, chp, fedex.

Ссылка на сообщение
Поделиться на другие сайты
  • 2 months later...

В файле /lang/russian/modules/shipping/flat.php

Поменял "в Москве" на "в Перми". Залил файл flat.php обратно по ftp.

Теперь в процессе заказа пишет: Warning: Cannot modify header information - headers already sent by (output started at /home/nemtinov/domains/kameon.ru/public_html/lang/russian/modules/shipping/autolux.php:1) in /home/nemtinov/domains/kameon.ru/public_html/inc/vam_redirect.inc.php on line 47

Что не так сделал?

Ссылка на сообщение
Поделиться на другие сайты

Ainz

А в чём Вы правили файл.

Проблема в том, что сохранили файлы в UTF8 с так называемым BOM (Byte Order Mask) или ещё называется сигнатура, нужно сохранять без BOM.

Как можно исправить, если есть FAR Manager, откройте файл и на первой строку, перед <?php удалите символ.

Либо открывайте и сохраняйте файлы например в Adobe Dreamviewer, он умеет сохранять без BOM, или есть ещё EM Editor.

Ссылка на сообщение
Поделиться на другие сайты

Ainz

А в чём Вы правили файл.

Проблема в том, что сохранили файлы в UTF8 с так называемым BOM (Byte Order Mask) или ещё называется сигнатура, нужно сохранять без BOM.

Как можно исправить, если есть FAR Manager, откройте файл и на первой строку, перед <?php удалите символ.

Либо открывайте и сохраняйте файлы например в Adobe Dreamviewer, он умеет сохранять без BOM, или есть ещё EM Editor.

В блокноте :))

Сейчас переделаю.

Спасибо.

Ссылка на сообщение
Поделиться на другие сайты

Да, блокнот как раз сохраняет с этим самым BOM, к сожалению.

Возьмите или Adobe Dreamviewer или EM Editor, если нужно будет часто менять файлы.

Ссылка на сообщение
Поделиться на другие сайты
  • 2 months later...

Доброе время суток!!!

Сделай в модуле доставки "курьер" меню выбора:

Курьерская доставка:

внутри МКАД цена 1,

внутри ТТК цена 2,

внутри Садового цена 3

пусть покупатель сам определяет какую доставку он предпочитает: внутри МКАД, внутри ТТК, внутри Садового.

Для этого в методе quote нужно возвращать массив значений. Примеры - dhl, chp, fedex.

Можно ли разжевать, для тех кто в танке, каким образом это воплотить ?! Есть необходимость в данной функции...

Думаю не мне одному будет интересно

Ссылка на сообщение
Поделиться на другие сайты

Можно как вариант, при регистрации пользователся изменить "Страна" на "Район" и далее по схеме, забить "Названия стран-районов", привязать к зонам, но тогда не будет выбора стран :( да и может человек нехочет к себе везти  :)

Ссылка на сообщение
Поделиться на другие сайты

Сделать что именно, как настраивать зоны?!

Вот в разделе про налоги написано в том числе как зоны настраивать - http://vamshop.ru/manual/ch05s06.html#id2946147

Ссылка на сообщение
Поделиться на другие сайты

Нужно привязать стоимость доставки к опр-ному району города(не трогая страны, зоны как я понял привязываються только к странам ?).

Далее:

а) при оформлении товара , клиент сам выбирает доставку в отпр. район, где уже автоматом считаеться доставка, к примеру курьера

Либо

б) при регистации клиента, не забиваеться вручную, а выбираеться из таблицы, уже имеющиеся районы города (на примере Страны), в последствии, при оформлении заказа, система автоматом плюсуе к сумме заказа, доставку до быванного района и выдает общий счет.

в случае б) имееться в виду, что адрес клиента и адрес доставки совпадают, что как известно , за частую не так...:(

Вопрос, как это реализовать ?!

Ссылка на сообщение
Поделиться на другие сайты

Таких готовых модулей я не видел даже, т.е. что б привязка именно к районам города.

Вот есть модуль где клиент сам колиметраж указывает, может его можно как-то за основу взять - http://vamshop.ru/node/219

Как это реализовать?

Правкой скриптов только, я ж не буду делать это за Вас.

Самое простое, если не нужен выбор страны, региона, то использовать одно из этих полей в качестве района.

Ссылка на сообщение
Поделиться на другие сайты

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

Ссылка на сообщение
Поделиться на другие сайты
  • 8 months later...

Товарищи такой вопрос. Имеется модуль доставки по МО, но ведь обычно доставку считают так, к примеру по Москве 500 рублей а за мкад +30 руб за км, так вот как сделать, что бы к итоговой сумме за МКАД он приплюсовывал 500 руб?

Ссылка на сообщение
Поделиться на другие сайты

Может кто пробовал? уже два дня пытаюсь вписать, +500, безрезультатно.

Вот код модуля, куда вписывать, пробовал в разные места, нифига.

<?php
/* -----------------------------------------------------------------------------------------
  kms.php 2006-10-03 01:00:00

  shipping module for XT-Commerce

  remade from flat.php

  Released under the GNU General Public License
  ---------------------------------------------------------------------------------------*/

  require_once(DIR_FS_INC.'kms.inc.php');


  class kms {
    var $code, $title, $description, $icon, $enabled;


    function kms() {
      global $order;

      $this->code = 'kms';
      $this->title = MODULE_SHIPPING_KMS_TEXT_TITLE;
      $this->description = MODULE_SHIPPING_KMS_TEXT_DESCRIPTION;
      $this->sort_order = MODULE_SHIPPING_KMS_SORT_ORDER;
      $this->icon = '';
      $this->tax_class = MODULE_SHIPPING_KMS_TAX_CLASS;
      $this->enabled = ((MODULE_SHIPPING_KMS_STATUS == 'True') ? true : false);

      if ( ($this->enabled == true) && ((int)MODULE_SHIPPING_KMS_ZONE > 0) ) {
        $check_flag = false;
        $check_query = vam_db_query("select zone_id from " . TABLE_ZONES_TO_GEO_ZONES . " where geo_zone_id = '" . MODULE_SHIPPING_KMS_ZONE . "' and zone_country_id = '" . $order->delivery['country']['id'] . "' order by zone_id");
        while ($check = vam_db_fetch_array($check_query)) {
          if ($check['zone_id'] < 1) {
            $check_flag = true;
            break;
          } elseif ($check['zone_id'] == $order->delivery['zone_id']) {
            $check_flag = true;
            break;
          }
        }

        if ($check_flag == false) {
          $this->enabled = false;
        }
      }
    }


    function quote($method = '') {
      global $order;
      $this->quotes = array('id' => $this->code,
                            'module' => MODULE_SHIPPING_KMS_TEXT_TITLE,
                            'methods' => array(array('id' => $this->code,
                                                    'title' => MODULE_SHIPPING_KMS_TEXT_WAY.kms_js_text(MODULE_SHIPPING_KMS_COST).kms_html_input_text(),
    'cost' => kms_html_result_text(),
        'self_html_cost'=>'true')));

      if ($this->tax_class > 0) {
        $this->quotes['tax'] = vam_get_tax_rate($this->tax_class, $order->delivery['country']['id'], $order->delivery['zone_id']);
      }

      if (vam_not_null($this->icon)) $this->quotes['icon'] = vam_image($this->icon, $this->title);

      return $this->quotes;
    }

    function check() {
      if (!isset($this->_check)) {
        $check_query = vam_db_query("select configuration_value from " . TABLE_CONFIGURATION . " where configuration_key = 'MODULE_SHIPPING_KMS_STATUS'");
        $this->_check = vam_db_num_rows($check_query);
      }
      return $this->_check;
    }

    function install() {
      vam_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_key, configuration_value,  configuration_group_id, sort_order, set_function, date_added) values ('MODULE_SHIPPING_KMS_STATUS', 'True', '6', '0', 'vam_cfg_select_option(array(\'True\', \'False\'), ', now())");
      vam_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_key, configuration_value,  configuration_group_id, sort_order, date_added) values ('MODULE_SHIPPING_KMS_ALLOWED', '', '6', '0', now())");
      vam_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_key, configuration_value,  configuration_group_id, sort_order, date_added) values ('MODULE_SHIPPING_KMS_COST', '5.00', '6', '0', now())");
      vam_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_key, configuration_value,  configuration_group_id, sort_order, use_function, set_function, date_added) values ('MODULE_SHIPPING_KMS_TAX_CLASS', '0', '6', '0', 'vam_get_tax_class_title', 'vam_cfg_pull_down_tax_classes(', now())");
      vam_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_key, configuration_value,  configuration_group_id, sort_order, use_function, set_function, date_added) values ('MODULE_SHIPPING_KMS_ZONE', '0', '6', '0', 'vam_get_zone_class_title', 'vam_cfg_pull_down_zone_classes(', now())");
      vam_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_key, configuration_value,  configuration_group_id, sort_order, date_added) values ('MODULE_SHIPPING_KMS_SORT_ORDER', '0', '6', '0', now())");
    }

    function remove() {
      vam_db_query("delete from " . TABLE_CONFIGURATION . " where configuration_key in ('" . implode("', '", $this->keys()) . "')");
    }

    function keys() {
      return array('MODULE_SHIPPING_KMS_STATUS', 'MODULE_SHIPPING_KMS_COST','MODULE_SHIPPING_KMS_ALLOWED', 'MODULE_SHIPPING_KMS_TAX_CLASS', 'MODULE_SHIPPING_KMS_ZONE', 'MODULE_SHIPPING_KMS_SORT_ORDER');
    }
  }
?>
[/code]

Ссылка на сообщение
Поделиться на другие сайты

×
×
  • Создать...