Интернет - магазин на несколько продавцов с помощью Virtuemart и VM Sellers

Задача по созданию интернет магазина на несколько продавцов возникает достаточно часто. Особенно она актуальна при торговле цифровыми товарами. Предположим, есть владелец магазина, который желает, чтобы на его сайте имели возможность размещать товары не только администраторы, но простые зарегистрированные пользователи. В данном случае решением этой проблемы станет компонент VM Sellers. Для его полноценной работы на сайте должен быть установлен Virtuemart 1.1.9. Оба расширения должны работать под Joomla 1.5


О том, как установить и русифицировать Virtuemart, мы уже рассказывали. Поэтому перейдем непосредственно к описанию VM Sellers.

Компонент VM Sellers распространяется на коммерческой основе. Чтобы приобрести данное расширение, необходимо нажать на ссылку, которая расположена ниже и произвести оплату в нашем магазине:
 

КУПИТЬ VM Sellers

Демонстрационная версия компонента находится по адресу:

http://vmsellers.sitogon.ru

 

Для доступа в административную панель следует использовать данные:

 

Адрес админ панели: http://vmsellers.sitogon.ru/administrator

Логин: user

Пароль: user

 

Принцип работы

 

Компонент VM Sellers работает совместно, можно даже сказать, параллельно Virtuemart. В процессе инсталляции VM Sellers никаких патчей и изменений исходного кода Virtuemart не происходит.

При необходимости полного удаления VM Sellers, интернет-магазин под управлением Virtuemart продолжит полноценно функционировать.

Принцип работы компонента заключается в максимальном использовании возможностей, которые были задуманы в Virtuemart, но так и не реализованы. Речь идёт о поддержке нескольких продавцов в интернет-магазине. Разложим по пунктам, что умеет и позволяет сделать компонент VM Sellers:

 

  • Регистрация пользователя как продавца

  • Возможность выкладывать собственные товары ( в том числе электронные) простым пользователям

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

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

  • В личном кабинете хранится история всех поданных заявок на вывод средств.

  • Администратор сайта может допускать к продажам продавцов, блокировать их и удалять.

  • На сайте можно отдельно выводить, как страницу со списоком продавцов, так и вывести список товаров отдельно взятого продавца

 

Краткая схема работы VM Sellers такова:

 

  1. Зарегистрированный пользователь заполняет анкету и отправляет заявку на участие в интернет-магазине в качестве продавца

  2. Сообщение о данной заявке поступает на электронный ящик администратора.

  3. Через панель управления компонента VM Sellers администратор одобряет заявку на участие в интернет-магазине. После чего продавцу автоматически отправляется письмо о том, что его статус изменился и он допущен к продажам.

  4. Продавец размещает товары в своём личном кабинете на сайте.

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

 

Установка VM Sellers


На сегодняшний день дистрибутив включает в себя непосредственно сам компонент «VM Sellers» и модуль «VMsellers Filter». Поэтому после того, как вы приобрели дистрибутив в нашем магазине, необходимо скачать архив «vm_sellers.zip» на жесткий диск своего компьютера.

Распаковать его и последовательно установить через «Менеджер расширений» пакеты com_vmsellers.zip и mod_vmsel_filter.zip

Описанию модуля будет посвящен отдельный раздел в данном руководстве, а пока предлагаю перейти к описанию и настройке компонента VM SELLERS

 

Интернет магазин на несколько продавцов — развёрнутое руководство


 

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

Настройка VM Sellers


Если вы купили, скачали и установили VM Sellers, необходимо подготовить компонент к последующей работе.

Для этого в административной панели вашего сайта переходим «Компоненты - VM Sellers — Настройки компонента»
 


 


 

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


 


 


 


 


 

URL сайта — Адрес вашего сайта. Слеш в конце не ставится

Удалить данные при деинсталляции компонента - если данная опция поставлена в положение «ДА», то при удалении компонента, будут уничтожены все таблицы в базе данных, созданные в процессе работы VM Sellers.

Валюта — используемая в магазине валюта «по умолчанию». Данный параметр должен совпадать с настройками Virtuemart. Здесь же необходимо заполнить текстовое поле «Символ». Значение, которое вы в него введете, будет впоследствии отображаться рядом с ценой товара при выводе товаров компонентом VM Sellers

Группа покупателей — группа покупателей, которые допущены к покупкам в вашем магазине. Этот параметр также должен совпадать с тем, что установлен в Virtuemart

E-mail получателя сообщений — здесь должен быть указан один или несколько адресов электронной почты владельца магазина. Если таких адресов несколько, то они вводятся через запятую. Именно на этот ящик будут приходить уведомления о новых зарегистрированных продавцах, а также заявки на выплату денежных средств.

ID продавцов, допущенных к торговле (через запятую), если параметр не введён - доступ к торговле любому авторизованному — это поле нео6бходимо заполнять, если вы хотите ограничить количество продавцов. В таком случае необходимо ввести ID тех, пользователей, которым вы доверяете торговлю в вашем магазине. Чтобы узнать ID пользователя, необходимо в административной панели посетить раздел «Сайт — Пользователи»
 


 

Далее в таблице обратить на последнюю колонку, где указан «ID», который соответствует данному пользователю.

Черный список IP адресов (через запятую) — в данное текстовое поле, при необходимости, можно ввести список нежелательных IP адресов. Тех, с которых по вашему мнению, идут попытки распространения спама на сайте.

Список запрещённых слов (через запятую) — введенные в это поле слова будут блокироваться системой, в место них будет отображен текст, который будет введет в текстовое поле «Слово (или HTML-код) - для замены запрещенного»

Разрешенные к загрузке HTML-теги — здесь вводятся теги, которые разрешены продавцу для ввода. Тем самым блокируется использование возможных скриптов, которые попытается внедрить на ваш сайт пользователь.

Преффикс таблиц (должен соответствовать настройкам Virtuemart) — в данном случае речь идет о префиксе таблиц в базе данных. Посмотреть префикс, который используется на данный момент можно в админ панели вашего сайта. Для этого заходим «Компоненты — Virtuemart — Настройки» и переходим на вкладку «Безопасность».

В текстовом поле «Префикс для таблиц VirtueMart» мы и находим требуемое значение
 


 

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

Чтобы узнать и изменить абсолютный путь в настройках Virtuemart, необходимо опять перейти «Компоненты — Virtuemart — Настройки», на этот раз отправляемся на вкладку «Скачивание» и обращаем внимание на строчку «Путь к файлам для скачивания»


 

Путь к файлам изображений товаров — идеальным решением будет оставить в этом поле значение «по умолчанию», поскольку оно совпадает с каталогом, который используется в Virtuemart.

Качество изображения — речь идет о качестве выводимых на сайте изображений

Ширина изображения — данное поле отвечает за ширину изображения товара. Если выставлено значение «0», то изображение будет отображаться с исходной шириной.

Ширина миниатюры — значение этого поля отвечает за ширину так называемых «мини эскизов» товаров — тех изображений, что выводятся в списке.

Код статуса выкупленного товара — здесь должно стоять значение кода товара, который считается полученным и оплаченным. В Virtuemart существует несколько статусов товара. Просмотреть их можно если зайти в админ панели «Компоненты — Virtuemart — Заказы — Список типов состояния заказа»

Откроется таблица, где в колонке «Код состояния заказа» можно увидеть требуемое значение. Как правило, приобретённый и оплаченный товар имеет статус «Confirmed», соответственно код статуса для него будет «C»
 


 

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

Наименование справочника
При удалении наименования, справочник не используется —
подробнее о том, что такое справочник и зачем он нужен, мы расскажем в отдельном разделе статьи. Чтобы прояснить вопрос в двух словах, пока сообщаю: справочник нужен, чтобы создать фильтр по продавцам. Условно говоря, привязать определенного продавца к отдельной категории.

Оператор, используемый при выборе нескольких параметров справочника — данный параметр позволяет выбрать способ сортировки при использовании справочника и модуля VMSellers Filter

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

Автоматическая генерация артикула — если указано значение «НЕТ», то при добавлении товара поле «Артикул» вводится вручную. Однако, если указано значение «ДА», то при добавлении товара это поле отсутствует, а артикул генерируется автоматически.

Включить удаление заявок на оплату — если это значение включить в положение «ДА», то станет возможно удаление заявок на оплату из административной панели. Здесь же нужно учитывать, если вы удалили заявку на оплату, то в личном кабинете продавца эта заявка будет иметь статус «не оплачена» и он сможет повторно запросить у вас деньги.

Включить интеграцию с JomSocial — если данный переключатель выставлен в положение «ДА», то при добавлении товара продавцом в ленте активности JomSocial появится запись, сообщающая какой товар и кем добавлен
 

Настройка личного кабинета продавца


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

Для этого в административной панели Joomla заходим в «Менеджер меню»

Нажмем кнопку «Создать» в правом верхнем углу и создадим меню с именем «sellers»


 

Теперь зайдем «Все меню — Sellers» и последовательно создадим восемь пунктов. Отличаться они будут, главным образом, типом создаваемого меню.



 

Ниже я приведу небольшую таблицу, где будет показан каждый пункт, который был создан на нашем демо сайте, расположенном по адресу - http://vmsellers.sitogon.ru/, а также краткое описание и его тип.

Название пункта меню на сайте

Тип меню

Краткое описание

Мой профиль

Profile

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

Добавить товар

Addprofuct

Этот пункт меню отправит продавца на страницу добавления товара.

Мои товары

Products

Отображает список уже размещённых товаров данного продавца в магазине

Мои проданные товары

Orders

Отображает список проданных товаров

Мои заявки на оплату

Payment

Отображает список заявок на оплату

Все товары

All-products

Выводит список всех товаров, размещенных в магазине

Все продавцы

Vendors

Выводит весь список продавцов, зарегистрированных на сайте

Товары определенного продавца

Vendor-products

Позволяет вывести список товаров отдельно взятого продавца. На сайте должен быть зарегистрирован хотя бы один продавец


 

После того, как пункты меню созданы, необходимо опубликовать модуль с меню «sellers» на вашем сайте.
 

Создание справочника в VM Sellers


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

Таким образом, мы имеем иерархию: Торговый центр — Этаж — Магазин

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

В таком случае администратор сайта должен подготовить и заполнить «Справочник», чем мы с вами и займемся. Предлагаю создать два условных торговых центра с не менее условными этажами.

Для этого в административной панели Joomla заходим : Компоненты — VMSellers — Справочник


 


 

Нажимаем кнопку «Создать» в правом верхнем углу и вводим заголовок нашего торгового центра. Затем выставляем переключатель «Опубликовано» в положение «ДА» и сохраняем нашу запись


 

Первый торговый центр создан. Настало время добавить к нему этажи. Пусть он будет трехэтажным. Приступим к созданию первого этажа. Нажимаем кнопку «Создать» и в текстовое поле «Наименование» вводим текст «1 этаж».

 

Теперь хочу обратить ваше внимание на выпадающий список «Пункт — родитель». Здесь мы должны выбрать созданный ранее торговый центр.

 

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

 

 

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


Как следует из текущего заголовка, настало время рассмотреть действия продавцов в вашем интернет-магазине. И начнем мы с регистрации.
 

Личный кабинет продавца


 

Прежде чем регистрироваться, как продавец, пользователь должен уже пройти стандартную регистрацию и авторизоваться на сайте.

Предположим, что у нас есть пользователь с логином «sitogon», который желает стать продавцом.

Рассмотрим его порядок действий. Он авторизуется на сайте и заходит в меню «Мой профиль», которое мы с вами создавали чуть ранее.

Далее он обязан заполнить все поля, отмеченные звездочками, обязательно заполнить поле «Электронные кошельки». Поле это заполняется в произвольной форме.

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


 

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

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

К примеру {firstname} будет соответствовать значению текстового поля «Имя»

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


 


 

После нажатия кнопки «Сохранить», администратору сайта будет отправлена заявка на участие в интернет-магазине. Во-первых, он на свой электронный ящик, указанный в настройках компонента VM Sellers получит уведомление о новом продавце. И выглядеть оно будет следующим образом:


 

Во-вторых, в административной панели, в разделе «Продавцы» отобразится новая запись.


 

Как видим, доступ для этого продавца пока горит красным цветом. Это означает, что продавец не допущен к торговле.

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

Разрешать, блокировать доступ к продажам можно также кнопками «Показать» и «Скрыть». Для этого необходимо выделить нужного продавца флажком. Кнопка «Удалить» позволяет убрать пользователя из продавцов навсегда. Нужно учитывать, что у такого пользователя должны отсутствовать товары в магазине. Если же они присутствуют, то нужно удалить их вручную непосредственно из компонента Virtuemart.

Продавцу на электронный ящик, указанный при регистрации придет письмо следующего содержания:
 


 

 

Добавление товара

Настало время нашему продавцу разместить свой товар в интернет-магазине. Для этого нажимаем в созданном нами меню на пункт «Добавить товар» и приступаем к заполнению всех необходимых полей.



 

После нажатия на кнопку «Сохранить» и размещения товара в интернет-магазине, продавец сможет его увидеть в разделе «Мои товары».

Если есть необходимость, внести изменения в текущий товар, исправить описание, поставить другую стоимость и т.д, то достаточно нажать ссылку «Редактировать» и приступить к правке.


 


 


 

В свою очередь администратор сайта сможет увидеть добавленный товар, как в самом компоненте Virtuemart, так и в разделе «Товары» административной части компонента VM Sellers
 


 

Внимание! Редактировать и удалять товары администратор сайта может только через админ панель компонента Virtuemart.


 

Настройка CRON для уведомлений продавцов


 

В самом начале данного руководства мы говорили, что компонент VM Sellers работает парралельно Virtuemart. То есть, никаких изменений в исходном коде магазина не происходило и не происходит.

Отсюда возникает следующая проблема: оповещения продавцов о том, что их товар приобретен покупателем и оплачен, поскольку весь процесс оплаты идет через Virtuemart

Чтобы функция оповещения работала, необходимо настроить CRON (планировщик заданий) на вашем хостинге

Чтобы настроить CRON, необходимо после команды wget вписать следующий адрес:


http://ваш сайт/index.php?option=com_vmsellers&task=sendvendor

 

Команда для хостинг — панели ISPmanager в нашем случае будет выглядеть следующим образом:

wget -O /dev/null "http://vmsellers.sitogon.ru/index.php?option=com_vmsellers&task=sendvendor " > /dev/null

а окно настройки задания мы настроили согласно рисунку:

 


 

Если вы не уверены в своих силах по настройке CRON, обратитесь за помощью к вашему хостинг-провайдеру, поскольку на разных хостингах параметры могут отличаться.

 

 

Заявка на оплату


Допустим, у нашего продавца приобрели товар в интернет-магазине. Просмотреть проданные товары можно в соответствующем разделе.

Здесь же можно обнаружить кнопку «Заявка на оплату».


 

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


 

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


 

После чего продавец сможет увидеть оплаченную заявку на сайте в разделе «Мои заявки на оплату»


 

Модуль VMSellers Filter


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

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


 

Однако, если этот модуль вывести на странице, что привязана к пункту меню «Все продавцы», то выглядеть фильтр будет несколько иначе

Нам откроются лишь пункты «Торговый центр...» и «Этаж». Нажатие кнопки «ОК» откроет список продавцов, что находятся на выбранными нами этаже и торговом центре

 



Подведение итогов


Как видим, компонент VM Sellers позволят создать полноценный мультивендорный магазин, где простые пользователи после соответствующей регистрации могут выкладывать свои товары на продажу.

Ждем ваши вопросы и предложения на форуме.

С уважением, Владимир Егоров