Интернет-магазин бытовой техники.

Аватар пользователя SkaTT SkaTT 13 ноября 2010 в 11:02

А я решил похвастать своим детищем на друпале.

http://www.washbyt.ru - Интеренет-магазин бытовой техники.

Основные особенности:

Собственный дизайн
Модификация модулей корзины, для использования её с агрессивным кешированием и возможностью заказа товаров "не в наличии" с уведомлением клиентов, в случае поступления товара на склад.
Модуль обновления складских остатков,
Модуль "Быстрого заказа" и возможности оформления заказа без регистрации на сайте.
Установлен модуль оплаты через Webmoney
Более 8000 товарных предложений на сайте
Модуль фильтрации по ценовым диапазонам и брендам.
Оптимизация функционирования под высокой нагрузкой.
Кое-какие хитрости по SEO.
Модуль экспорта для Яндекс.Маркета.
Модуль "вы можете купить так же".

В среднем 2500 человек в день на сайте.
При текущих настройках сайт выдержит до 5000 человек в сутки, на VDS сервере.

Особую благодарность выражаю Илье Азарову, Олегу Яценко, Евгению Фиделину, Илье Горшкову и Васильеву Семену за неоценимую помощь в разработке.

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

С удовольствием отвечу на все вопросы)

Комментарии

Аватар пользователя Sentrashy@drupal.org Sentrashy@drupal.org 13 ноября 2010 в 12:38

Розовая дрель улыбнула=) именно такой дрелью сосед уже 2-ю недель чего-то сверлит по утрам - я порсто уверен.

Аватар пользователя SkaTT SkaTT 13 ноября 2010 в 12:52

"<a href="mailto:swingsss@drupal.org">swingsss@drupal.org</a>" wrote:
А всплывающее окно при нажатии на заказть каким образом создали??

С помощью ThickBOX. он умеет выводить не обязательно картинки, но и HTML.

Аватар пользователя q2_faith q2_faith 13 ноября 2010 в 13:23

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

Аватар пользователя SkaTT SkaTT 13 ноября 2010 в 14:35

"<a href="mailto:volocuga@drupal.org">volocuga@drupal.org</a>" wrote:
Чем сделана сортировка по диапазонам цен?
собственный модуль, фактически это хардкод надстройка над Views

Аватар пользователя SkaTT SkaTT 13 ноября 2010 в 15:25

Конечно. он открыт в феврале 2009.

Я его быстренько запустил в продакшн, отдал контентам на наполнение и, с тех пор постепенно его допиливаем.

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

Аватар пользователя volocuga@drupal.org volocuga@drupal.org 13 ноября 2010 в 15:35

"SkaTT" wrote:
собственный модуль, фактически это хардкод надстройка над Views

Т.е решение не универсальное?

Аватар пользователя SkaTT SkaTT 13 ноября 2010 в 15:53

не знаю. Может и можно на другом сайте использовать. Но, во-первых это DRUPAL 5, на нем вряд ли кто будет новый проект делать. И да, заточено именно под наш магазин, так что безглючность не гарантирована.

Аватар пользователя fexmusicmutuz@gmail.com fexmusicmutuz@g... 13 ноября 2010 в 16:14

У Вас все товары это один тип содержимого?
Как выполняете проверку заполнения полей, обязательных для заполнения для одного типа товара и не обязательные для другого типа товара(то есть есть поле диагональ, для телевизоров неоходимо заполнить, а для пылесоса нет)
Как Вы выходите из данной ситуации?

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


Аватар пользователя SkaTT SkaTT 13 ноября 2010 в 17:07

Начну с таксономии

У меня 5 словарей таксономии (с примером заполнения)

Тип техники (Блендеры, Стационарные блендеры)
Мощность (850 Вт)
Цвет (Белый с синим)
Производитель (Braun)
Особенности (Вакуумный насос, вакуумный контейнер, металлический корпус)

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

Особенности заполняются по теговому принципу, надо написать 17", - пишем 17", надо написать "аквафильтр", - пишем "аквафильтр", т.е. ВАЖНЫЕ для данной группы товаров характеристики.

Есть нюанс в каталоге! Чтобы товары "под заказ" не забивали выдачу, каталог по умолчанию отсортирован по количеству товаров на складе в обратном порядке, А при использовании фильтра по цене "под заказ" и вовсе пропадают и сортировка становится по возрастанию цены.

Сам механизм вывода каталога не модифицировался, Ubercart именно сам по себе такой красивый, просто я немного его темизировал.

Картинки на главной странице берутся из описания терминов словаря "Тип техники".

Краткие описания в каталоге составляются исключительно из таксономических словарей, если заполнена мощность, то берется название словаря + заполненый термин. если заполнены особенности, то берется название словаря + термины.

Аватар пользователя SkaTT SkaTT 13 ноября 2010 в 17:12

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

Аватар пользователя SkaTT SkaTT 13 ноября 2010 в 17:17

Корзина полностью работает на АЯКСЕ, т.е. в статичную страничку из кеша впечатывает текущее содержимое корзины, тем самым имеем возможность использовать полностраничный кеш и выдерживать высокую нагрузку, Следующим этапом будет переезд на собственный сервер и сохранение статичных страниц в файлы на виртуальный RAM-Drive, отдавая странички даже не АПАЧЕм, а nginx'ом. Но это скорее мысли вслух и туманные планы ))))

Аватар пользователя volocuga@drupal.org volocuga@drupal.org 13 ноября 2010 в 17:18

Фильтр по брендам и диапазонам цен - это просто супер, мегаполезная вещь. Не хотите попробовать написать в паблик такой модуль под д.6? Я бы пожертвовал баксов 50 на это, думаю другие люди бы добавили.

Аватар пользователя lugann lugann 14 ноября 2010 в 18:04

такой поиск как у вас на сайте - можно подробнее рассказать . насколько вообще все это надо

Аватар пользователя SkaTT SkaTT 14 ноября 2010 в 19:50

имеете в виду интегрированный поиск от Яндекса?

В основном я его использую потому, что
а) так проще Smile
б) не грузит сервер и быстро работает.
в) понимает различные варианты написания одного товара, даже ошибки понимает.
к примеру: Braun fs20, braun fs 20, fs20, fs 20, браун фс20
г) теоретически ускоряет переиндексацию.

Есть и минусы конечно.