Remontnouta.ru

ПК Ремонт техники
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Минимальная сумма заказа в корзине и оформлении заказа в 1С-Битрикс

Минимальная сумма заказа в корзине и оформлении заказа в 1С-Битрикс

В этой заметке добавим возможность установки минимальной суммы заказа, в новом шаблоне корзины на 1С-Битрикс. Не «прибитую гвоздями» в шаблоне компонента, а управляемую через параметры компонента.

Работать будет так: Если сумма в корзине меньше минимальной — то кнопка «Оформить заказ» не показывается, вместо нее уведомление. Как только сумма превышает минимальную — кнопка появляется. Все работает на лету, без перезагрузки страницы. Как-то так:

  • от 1000руб. до 20000руб. — Профессиональный хостинг на 1 год (тариф выбирается соразмерно планируемой нагрузке)
  • от 150руб. — Регистрация домена на 1 год
  • 30400руб. — Уникализация дизайна
  • 5000руб. — Разработка нового логотипа
  • 15000руб. — первичная SEO-оптимизация
  • 15000руб. — первичная настройка рекламной компании в Яндекс.Директ

Часто задаваемые вопросы:

Да, если у вас уже есть лицензия на Битрикс и если она подходит для данного решения (не ниже предложенной в составе готового сайта), стоимость готового сайта будет уменьшена.

Готовый сайт означает только то, что вы экономите на времени и стоимости разработки. Как минимум 2-3 месяца и не менее 50-100 тысяч рублей вы экономите на разработке и согласовании дизайна. За это время ваш сайт уже будет работать и приносить вам клиентов, и вы можете впоследствии поменять дизайн, уже зная, что именно будет наиболее удобно для ваших клиентов и выгодно для вашего бизнеса.

Приобретаемый вами сайт будет вашей собственностью. Мы предоставлем вам полные доступы и все необходимые документы на лицензию, домен, хостинг, и панель управления сайтом, а также обучаем работе с сайтом. Наши готовые сайты построены на платформе «1С-Битрикс», которая является лидером россйиского рынка. У нее есть хорошая документация на русском языке. Впоследствии вы можете управлять сайтом сами, а также дорабатывать его нашимисилами, своими силами или обратиться к более чем 10000 партнеров Битрикс по всей России.

Читайте так же:
В приложении к письму прикрепляю

Разработка компонента оформления заказа на 1С Битрикс

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

1. Создаем файл и помещаем туда компонент корзины

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

Все файлы по обработке заказа у нас лежат в папке cart в корне сайта. Там мы создаем файл index.php.

cart-files

Затем добавляем туда компонент корзины для получения всех товаров в корзине и отображения их на странице. Компонента корзины называется sale.basket.basket. Естественно, нужно сохранить шаблон компонента. Почитать о нем подробнее можно в официальной документации bitrix.

2. Получаем товары корзины и помещаем их в форму

В шаблоне компонента нам нужно создать форму, action которой будет сохранять заказ. Соответственно в POST необходимо передать все товары корзины и свойства заказа. Обратите внимание, что мы можем создать свойства к заказу через административную панель битрикса, которые потом можем передать в форме заказа. То же самое касается видов доставки и плательщиков.

Все файлы по обработке заказа у нас лежат в папке cart в корне сайта. Там мы создаем файл index.php.

cart-products properties

Обработчик формы у нас лежит в той же папке. Файл называется createOrder.php

Код файла достаточно большой, поэтому мы разместили его по ссылке. (Обратите внимание, что файл имеет расширение .txt. Вам нужно будет поменять расширение на .php)

Функционал изменения количества в компоненте корзины

Увеличение количества товара

Читайте так же:
Видеокамера sony hdr cx405 обзор

function incrementQuant(ID) <
$.ajax( <
type: «POST»,
url: «/cart/ajax_increment.php»,
data: <
PRODUCT_ID: ID
>,
success: function (msg) <
// alert(msg);
>
>);
>

if (!CModule::IncludeModule(«sale»)) return;
if (isset([H1toH2]
POST[‘PRODUCT_ID’])) <
$PRODUCT_ID = intval(
POST[‘PRODUCT_ID’]);
$quantity = CSaleBasket::GetByID($PRODUCT_ID)[‘QUANTITY’];
CSaleBasket::Update($PRODUCT_ID, array(«QUANTITY» => $quantity + 1));
>

Уменьшение количества товара

function decrementQuant(ID) <
$.ajax( <
type: «POST»,
url: «/cart/ajax_decrement.php»,
data: <
PRODUCT_ID: ID
>,
success: function (msg) <
// alert(msg);
>
>);
>

if (!CModule::IncludeModule(«sale»)) return;
if (isset(
POST[‘PRODUCT_ID’])) <
$PRODUCT_ID = intval(
POST[‘PRODUCT_ID’]);
$quantity = CSaleBasket::GetByID(
POST[‘PRODUCT_ID’])[‘QUANTITY’];
if ($quantity == 1) <
CSaleBasket::Update($PRODUCT_ID, array(«QUANTITY» => 1));
> else <
CSaleBasket::Update($PRODUCT_ID, array(«QUANTITY» => $quantity — 1));
>
>

Функционал удаления из корзины

function removeFromBasket(ID) <
$.ajax( <
type: «POST»,
url: «/cart/ajax_delete.php»,
data: <
PRODUCT_ID: ID
>,
success: function (msg) <
// alert(msg);
>,
complete: function () <
window.location.reload()
>
>);
>

if (!CModule::IncludeModule(«sale»)) return;
if (isset(
POST[‘PRODUCT_ID’])) <
$PRODUCT_ID = intval(
POST[‘PRODUCT_ID’]);
CSaleBasket::Delete($PRODUCT_ID);
// echo «Продукт удален»;
>

[/H1toH2]

голоса
Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector