Сообщение

МультиШоп

Интегрированная сеть интернет-магазинов "MultiShop"


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

  1. Введение
  2. Решаемые задачи
  3. Выбор платформы
  4. Предлагаемое решение
  5. Описание работы
    1. Ведение реестра и развертывание магазинов
    2. Импорт информации о товарах
    3. Работа с заказами
  6. Варианты использования

1 Введение

Создание сети торговых площадок - один из элементов масштабирования бизнеса. Весьма привлекательно выглядит размещение интернет-магазина по возможности близко к целевой аудитории (в сетевом смысле). Например, продвигая товар среди потенциальных покупателей, которые находятся в Германии, предпочтительнее размещать интернет-магазин или его филиал в одном из сегментов сети Германии и в домене .de. Аналогично для рынков других стран.

Также сеть торговых площадок может быть составной частью партнерской программы. При этом каждый партнер получает в свое распоряжение полноценный интернет-магазин.

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

2 Решаемые задачи

Описываемая система решает следующие задачи:

  • позволяет быстро ("в один клик") производить развертывание нового узла в сети интернет-магазинов не зависимо от его физического расположения. Нахождение его на одном и том-же сервере с основным магазином не требуется.
  • позволяет легко выполнять импортирование информации о товарах из основного магазина. Импорт каждого товара выполняется индивидуально (возможен вариант массового импорта). После импорта товар становится относительно независимым. Т.е. возможно редактирование всех его параметров за исключением кода.
  • позволяет управлять складскими остатками из единого центра.
  • позволяет накапливать информацию о всех заказах в основном магазине.

3 Выбор платформы

Описываемая система построена на базе программного обеспечения Zen-Cart. Выбор Zen-Cart не случаен. По нашему мнению, Zen-Cart является наиболее развитой в архитектурном плане системой электронной торговли, берущей свое начало от osCommerce.

Именно наличие таких архитектурных особенностей, как подсистема уведомлений и др. позволяет легко наращивать функционал системы не затрагивая ее ядра. Таким образом, правильно постороенные дополнения к Zen-Cart останутся работоспособными и после выхода новых версий ядра. Обновление кода ядра в случае выхода новых версий может быть выполнено без необходимости вносить изменения в код дополнений и наоборот, обновление дополнений не требует изменения кода ядра.

4 Предлагаемое решение

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

Для повышения удобства и ускорения работы администратора нами широко применена технология AJAX.

5 Описание работы

5.1 Ведение реестра и развертывание магазинов

Для ведения реестра магазинов в административной пенели предназначен пункт Substores->Stores (рис. 1).


Рисунок 1 - Фрагмент меню

Назначение элеменов управления здесь стандартное для Zen-Cart. Для добавления нового магазина в список служит кнопка "New Store", которая активизирует панель ввода информации о новом магазине (рис. 2).


Рисунок 2 - Кнопка "New Store"

Нужно заполнить (рис. 3):

  • Название магазина;
  • Юридичесикй адрес магазина - для печати на документах;
  • URL главной страницы магазина;
  • ftp адрес каталога, в котором будут размещены файлы нового магазина;
  • путь к корневому каталогу магазина;
  • ftp-логин;
  • ftp-пароль.

Рисунок 3 - Форма для добавления магазина в реестр

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

Для того, чтобы начать процесс загрузки файлов на удаленный сервер служит кнопка "+ install". В процессе загрузки на целевом сервере будет создана структура каталогов и загружены все файлы необходимые для работы магазина. Процедура удаленной загрузки построена таким образом, что не зависит от скорости соединения. Она стабильно работает как при быстых, так и при медленных соединениях.

По окончании загрузки файлов на удаленный сервер, администратор будет переадресован на стандартную страницу инсталляции Zen-Cart, где и завершит установку нового магазина.

Аналогичный механизм может быть использован и для централизованного обновления программного обеспечения во всех магазинах сети.

Для исключения магазина из реестра служит кнопка "delete".

5.2 Импорт информации о товарах

Для импорта товаров в административной панели каждого магазина (кроме основного) существует пункт Catalog->Products Loading (рис. 4)


Рисунок 4 - Фрагмент меню

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

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


Рисунок 5 - Календарь и алфавитный указатель

Товары, информация о которых уже импортирована, отмечены "птичкой".

Чтобы импортировать информацию о конкретном товаре, нужно нажать кнопку "+" в колонке "Action" в соответствующей строке.


Рисунок 6 - Кнопка импорта товара

В процессе импорта будет:

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

Возможен и другой вариант работы с категорими при котором создается категория для импорта товаров. Эта категория делается неактивной. После импорта товаров администратор самомстоятельно переносит их в нужную категорию. Такой вариант удобен если структура категорий не соответствует структуре категорий основного магазина.

Идентификация и связь товаров осуществляется по их коду во всех магазинах сети. Поэтому администратор каждого магазина может изменять любые парметры товара в магазине, кроме его кода.

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

Таким образом магазины в сети могут быть весьма независимыми в смысле маркетинговых действий.

5.3 Работа с заказами

На завершающем этапе оформления заказа, вся информация о нем передается в основной магазин. Там она накапливается в отдельном реестре для дальнейшей обработки.

Получение основным магазином информации о заказе инициирует корректировку складских остатков по товарам, включеным в заказ. Вместе с эти выполняется оповещение всех магазинов сети об изменении остатков. Таким образом эта информация синхронизируется.

Для работы с заказами в административной панели основного магазина предусмотрен пункт Substores->Orders. Администратор основного магазина может просматривать информацию о заказах полученную со всех магазинах, выполнять печать документов и т.д.

6 Варианты использования

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

  • разворачивания сети интернет-филиалов;
  • построения партнерских программ;
  • быстрого разворачивания магазинов и последующей сдачи их в аренду.

Joomla templates by a4joomla