Ответить Новая тема Новый опрос 
 Изменение порядка действий при оформлении заказа
psycho_one
Новичок
Сообщений: 3
Регистрация: 04-12-2013


02-11-2014 15:43
Здравствуйте!

После добавления товара в корзину, при оформлении заказа, стандартная последовательность действий такая:

Выбор -> Авторизация -> Адрес -> Доставка -> Оплата.

Возможно ли поменять местами выбор доставки и ввод адреса? Если человек выбрал самовывоз, какой смысл ему вводить свой адрес?
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
e_v_medvedev
Профессионал
Сообщений: 806
Откуда: Москва
Регистрация: 25-03-2011


02-11-2014 16:48
Настолько менять процедуру оформления заказа крайне сложно. Дело в том, что параметры доставки рассчитываются на основании адресных данных и если вариант доставки не подходит для соответствующей точки или стоимость не рассчитывается. Логика зашита очень жестко. Вы сначала обязан создать клиента и его адрес, а потом выбирать варианты оплаты и доставки. То что вы хотите мне удалось сделать на Magento (там хранение данных о клиенте по-другому построено). для пояснений смотрите сайты http://cdolls.ru/ и new.cdolls.ru. Первый на Prestashop, второй на Magento. На втором можете поэкспериментировать сейчас с оформление заказа, он пока отладочный. На первом заказы делать не надо :-).
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Алекс


Администратор
Сообщений: 4516
Откуда: Красноярск
Регистрация: 29-05-2009


02-11-2014 20:29
Цитата:( e_v_medvedev @ 02-11-2014 17:48 Смотреть сообщение )
Настолько менять процедуру оформления заказа крайне сложно.
Глупость!

Цитата:( e_v_medvedev @ 02-11-2014 17:48 Смотреть сообщение )
Логика зашита очень жестко.
Глупость! :eek:

Цитата:( e_v_medvedev @ 02-11-2014 17:48 Смотреть сообщение )
Вы сначала обязан создать клиента и его адрес, а потом выбирать варианты оплаты и доставки.
Глупость! :eek:


Цитата:( psycho_one @ 02-11-2014 16:43 Смотреть сообщение )
Возможно ли поменять местами выбор доставки и ввод адреса? Если человек выбрал самовывоз, какой смысл ему вводить свой адрес?
Три решения:
1. Установить модуль быстрого оформления заказа.
2. Заказать отдельную разработку под ваше ТЗ - раздел работа.
3. Переписать OrderController, например:

/controllers/front/OrderController.php
Код:
$this->_assignAddress();
                $this->processAddressFormat();
                if (Tools::getValue('multi-shipping') == 1)
                {
                    $this->_assignSummaryInformations();
                    $this->context->smarty->assign('product_list', $this->context->cart->getProducts());
                    $this->setTemplate(_PS_THEME_DIR_.'order-address-multishipping.tpl');
                }
                else
                    $this->setTemplate(_PS_THEME_DIR_.'order-address.tpl');

заменить на:
Код:
$this->autoStep();
                $this->_assignCarrier();
                $this->setTemplate(_PS_THEME_DIR_.'order-carrier.tpl');


/themes/ваш-шаблон/order-carrier.tpl
Код:
<input type="hidden" name="step" value="3" />

заменить на:
Код:
<input type="hidden" name="step" value="2" />


/controllers/front/OrderController.php
Код:
if (Tools::isSubmit('processAddress'))
                    $this->processAddress();
                $this->autoStep();
                $this->_assignCarrier();
                $this->setTemplate(_PS_THEME_DIR_.'order-carrier.tpl');

заменить на:
Код:
if ($this->context->cart->id_carrier == 3)
                    Tools::redirect('index.html?controller=order&step=3');
                else
                    Tools::redirect('index.html?controller=order&step=1');


Примечание:
3 - ID самовывоза.
Код обрабатывает только ситуацию с самовывозом, дописать в case 2 прочие ситуации.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
svetlana87
Новичок
Сообщений: 1
Регистрация: 21-02-2015


21-02-2015 19:10
Не стала создавать новую тему спрошу здесь.
Помогите, пожалуйста, убрать шаг доставка при оформлении заказа. Доставка будет только транспортной компанией. Рассчитывать доставку в каждый регион, каждого товара считаю абсолютно лишним, т.к. покупатель сам будет оплачивать доставку в ТК. Условия доставки прописаны в информации для покупателя. Помогите разобраться, пожалуйста, зависла на этой доставке.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Алекс


Администратор
Сообщений: 4516
Откуда: Красноярск
Регистрация: 29-05-2009


22-02-2015 23:05
Цитата:( svetlana87 @ 21-02-2015 20:10 Смотреть сообщение )
Помогите, пожалуйста, убрать шаг доставка при оформлении заказа.


Для prestashop 1.6.x:
Открыть /controllers/OrderController.php

после:
Код:
if ($this->ajax)
            die(true);

добавить:
Код:
$this->context->cart->id_carrier = 5;
        $this->context->cart->setDeliveryOption(array($address->id => '5,'));
        $this->context->cart->update();
        Context::getContext()->cookie->check_cgv = true;
        Tools::redirect('index.html?controller=order&step=3');



5 - заменить на необходимый ID способа доставки.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Cashor
Новичок
Сообщений: 2
Регистрация: 26-03-2016


26-03-2016 00:47
У меня такая проблема, установил престу и начал дорабатывать немного под себя. Но самое главное сделать не могу, у нас магазин в Санкт-Петербурге и когда люди заказывают из этого города, то какой смысл им заполнять адрес, город, страну. Нужно поменять местами на пункт 1 поставить выбор доставки, на пункт 2 регистрацию и заполнение данных. Но если человек выбирает пункт (Самовывоз) то ему не нужно было вводить данные с адресом.

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

Подскажите, можно ли такое сделать? Если нужно будет оплатить работу, то напишите сколько это будет стоить.

сайт: http://nozhiman.tmweb.ru/

С Уважением, Евгений.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Алекс


Администратор
Сообщений: 4516
Откуда: Красноярск
Регистрация: 29-05-2009


27-03-2016 00:32
1. Необходимо реализовать определение города / региона покупателя:
Три варианта реализации:
1) самостоятельное определение региона покупателем (встроить форму для выбора региона / города).
2) добавить определение через библиотеку SxGeo (точность ~60%*).
3) добавить определение через Я.карты (точность ~95%*).
* точность по моей статистике (заказам в ИМ).

2. Переписать систему оформления заказа. Основываясь на полученных данных (регионе) для одних отображать стандартный способ оформления, а для покупателей из СПБ и области изменить шаги (как это выполнить описано выше).


Цитата:( Cashor @ 26-03-2016 01:47 Смотреть сообщение )
Подскажите, можно ли такое сделать? Если нужно будет оплатить работу, то напишите сколько это будет стоить.

Стоимость подобной модификации кода + разработка модуля определение региона: ~1000 руб.
Разместите заказ в разделе Работа.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Cashor
Новичок
Сообщений: 2
Регистрация: 26-03-2016


27-03-2016 01:35
Цитата:( Алекс @ 27-03-2016 01:32 Смотреть сообщение )
1. Необходимо реализовать определение города / региона покупателя:
Три варианта реализации:
1) самостоятельное определение региона покупателем (встроить форму для выбора региона / города).
2) добавить определение через библиотеку SxGeo (точность ~60%*).
3) добавить определение через Я.карты (точность ~95%*).
* точность по моей статистике (заказам в ИМ).

2. Переписать систему оформления заказа. Основываясь на полученных данных (регионе) для одних отображать стандартный способ оформления, а для покупателей из СПБ и области изменить шаги (как это выполнить описано выше).


Цитата:( Cashor @ 26-03-2016 01:47 Смотреть сообщение )
Подскажите, можно ли такое сделать? Если нужно будет оплатить работу, то напишите сколько это будет стоить.
Стоимость подобной модификации кода + разработка модуля определение региона: ~1000 руб.
Разместите заказ в разделе Работа.


Спасибо, разместил заказ ранее, по цене согласен, буду ждать ответа.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Ответить Новая тема Новый опрос