На ваш суд новый сайт компании "Джаз-клуб-сервис". Сделан на Drupal 6.22 + Ubercart. Честно говоря, первый опыт работы с Ubercart, до этого интернет-магазины собирали, используя другой engine, но тут владелец захотел много мелочей, которые на Drupal сделать быстрее. Ссылка - http://jcs.com.ua
Комментарии
Прикольный, а скидки каким модулем реализованы?
Отлично по моему и ассортимент хороший. Жаль, раздел "Маршевые духовые инструменты" пуст)
А чем такое меню делали с иконками? Меню - это таксономия?
UPD: онлайн-консультанта еле заметил, надо его поярче)
Хороший магазин получился. Немного медленно работает только.
Способ увеличения изображения товара, когда при наведении мышки увеличивается фрагмент изображения, мне кажется неудобным. Но это, наверное, кому как.
А чем сделаны табы под товаром (характеристики, отзывы, фото и тд.)? Это вроде не quicktabs.
Зачот!
*****
А как сортировку сделали?
А скидки каким модулем реализованы?
А чем такое меню делали с иконками? Меню - это таксономия?
А чем сделаны табы под товаром (характеристики, отзывы, фото и тд.)? Это вроде не quicktabs.
А как сортировку сделали?
без ОТВЕТОВ??? зачтем за спам...
1.Скидки - расчитываются исходя из разницы стоимости закупки и продажи.
2.Меню - таксономия, выводится из своего модуля.
3. Табы, системные сообщения, фильтр цены, все попапы (включая корзину) - jQuery UI
4.Сортировка - хуками views.
Штука бесплатная. Более-менее приличный чат (правда, я не понимаю, нахрена он тут нада). Интегрируется просто вставкой ссылки, которая при клике открывает сей фрейм.
Хорошь, весьми)
правда увеличение картинки криво работает. По крайне мере при просмотре блокфлейт.
а какую нибудь инструкцию бы
hook_form + hook_mail))
hook_form_alter
Вообще тут все стандартными друпальными средствами, ничего военного. Поколдовать пришлось только тут - http://jcs.com.ua/kalkuljator-prokatnogo-oborudovanija , ну и немного повозиться с PHPexel, чтобы рисовать по всем брендам прайсы в *.xlsx на лету. Остальное самыми обычными средствами API. Счас подкручиваю sphinx, чтоб сделать нормальный поиск, завтра запущу. Хреново ищет друпальный поиск. В остальном сайт уже работают, контентщики заполняют, начались первые звонки от клиентов, заказчика очень волновал "сдвиг с мертвой точки" ))
Как по мне, так хорошо сделанный сайт. Так держать.
з.ы. Есть у меня и вопрс. Т.к. с друпалом только разбираюсь, пытаюсь понять, насколько он подойдет мне в моих проектах. Хотел поинтересоваться, каким образом у вас реализованы иерархические url страниц в соответствии с каталогом (например: http://jcs.com.ua/zvukovoe-oborudovanie/mikshernye-pulty/analogovye-miks...)? Я пока набрел в этом плане только на модуль Node Hierarchy, но его для семерки нет даже альфы... Или это фишка уберката?
Буду всеьма признателен за ответ.
Модуль Ubercart Catalog на сайте не используется. Все товары выводятся таксономией. Соответственно в pathauto для товаров указано формирование урлов в соответствии термина, к которому привязаны ноды.
Очень понравилось!
Захотелось такой же!
Подскажите, пожалуйста, а с помощью чего реализованы вкладки "характеристики, отзывы, фото, доставка" в товарной карточке? Как осуществляется переключение между ними? Это такой модуль?
Табы с помощью jQuery UI
Спасибо. Буду разбираться.
Добавил сравнение товаров. Не самый красивый вариант получился, но придумать че-нить получше в голову не пришло.
Хороший сайт. Из минусов могу сказать, что на странице товара блок "Рекомендуем" лучше убрать. Пользователи будут больше ходить и меньше покупать. Тем более, что там бывают товары по более низкой цене. И ещё само меню по высоте очень большое и не влезает на по высоте в популярнейшие разрешения.
Ну дизайн делался по пожеланиям заказчика. И блок "рекомендуем" - для каждого товара заказчик заполняет рекомендуемые сопутствующие товары (если не заполнил - выводятся случайные из этой же категории). Ну и собственно как идут продажи меня мало волнует, заказчик обращается за новым функционалом, я реализую и получаю деньги)) А кто что покупает - тут 90% зависит от работы менеджера, ибо посетители по сайту ходют активно
да? любопытно. Дет вычитывал что много зависит от того как сделан магаз. Но спорить не буду, в изготовлении магазов далеко не спец.
А то что хотелки заказчика превыше всего - это да. Тут против не попрешь))
90% покупок в таком инет-магазине (где большинство товаров >1000$) идут через телефонный звонок, кто будет оплачивать такой товар просто через биллинг у нас? Поэтому если тут у менеджера не подвешен язык - то ни демпинг, ни дазайн погоду не сделают.
Спасибо за замечание, натокнули на идею! Теперь если заказчик не заполнил сопутствующие товары - выводятся из этой категории только товары с более высокой ценой.
Подскажите, как вы вынесли сортировку? На сколько я знаю раскрытая сортировка во views привязана к блоку с раскрытыми фильтрами. Или это не вьюшная сортировка?
Это вьюшная сортировка.
Просили инструкцию. У меня работает так:
1.Для типа материала создаем все необходимые поля для всех категорий.
2.Машинные имена полей задаются по схеме field_for_ID_термина, field_for_ID_термина2, field_for_ID_термина3, field_for_ID_термина4 - где в качестве ID термина пишем номер термина, для которого показываем поле в форме сортировки и в форме создания/редактирования ноды. Общие поля называем как хотим.
3.Альтерим форму создания/редактирования ноды, чтобы при выборе нужного термина (у меня это категории) средствами AJAX подгружать нужные поля (field_for_334 и т.д.), подставляя в качестве ID выбранный термин.
4.Все поля которые юзаются только для фильтрации исключаем из вывода.
5.Создаем views с раскрытой формой, в качестве типа вывода указываем поля и выводим только нужные поля (вывод "материал" делает node_load, а нам в принципе не нужно подгружать всю колбасу).
6.Альтерим форму фильтра, что бы показывать только нужные поля формы аналогично пункту 3.
7.Если есть словарь категории и бренды как у меня на приведенном сайте - заальтерить поиск по бренду в категории и поиск по категории в бренде.
8.Альтерим views для расширенной сортировки если нужно.
9.Наслаждаемся.
Легко поддерживать, добавить любое доп.поле - 2 секунды. Если оно общее - называем как хотим. Если динамическое - как в пункте 2. Надеюсь изъяснил понятно. Результат вы видели. В итоге удалось обойтись одним типом материала с множеством полей (уже более 10000 товаров в 500 категориях для 200 брендов), а не плодить варианты.
С чем пришлось повоевать чтобы иметь нормальную производительность:
1. Всеми силами избегать массовый node_load, тизеры выводить только одним запросом с нужными полями на сайте.
2. Написать дополнительный файловый кеш для своих блоков (в данном случае это главное меню сайта с фото категорий, блок новостей, блок с брендами и т.д.), который обнуляется при hook_nodeapi (добавление/изменение, удаление товаров) и работает для авторизованных/неавторизованных, анонимусам кеш выдается через Boost. Самописный файловый кеш дал возможность удобно контролировать все что нужно закешить отдельно. Ибо выдавая авторизованым юзерам обилие динамических ссылок с алиасами на странице жрет много запросов.
3. Свой кеш для прайсов, генерируемых библиотекой PHPexel, который тоже обнуляется по hook_nodeapi. работает для авторизованных и анонимов.
4. Поиск - sphinx (вы можете заюзать любой другой аналог), чтобы избавиться от прожорливого и неуклюжего друпального индексатора. Как минимум. Как максимум - юзер должен легко найти товар в магазине по запросу в любом падеже.
5. Ну еще много мелочей для повышения производительности (как приложения так и настройка сервера).
Знаю, что можно было пойти через кешроутеры и доп.модули, но хотелось иметь быстрое и легко настраиваемое решение, заточенное имено под этот проект, которое легко поддерживать самому (в данном случае сайт - мой долгосрочный клиент).
Симпатично, светло)))
интересно как вы организовали навигацию из категории в под-категорию. судя по всему используется пара вьюх, но как удалось организовать показ ссылок на другие вьюхи с изображениями? во вьюхе "категория" отображается список вьюх-подкатегорий или как? для каждой подкатегории используется отдельная вьюха или одна и та же, но с динамически изменяемыми параметрами? подскажите пожалуйста как это можно реализовать или может уроки есть какие-то? сейчас просто создаю как-раз интернет-магазин автозапчастей и столкнулся с проблемой отображения ссылок на подкатегории в виде изображений
Для изображений терминов используется Taxonomy Image (в Drupal 7 это уже не нужно, т.к. нет проблем с добавлением полей к терминам). Для терминов, у которых есть "дети" просто используется вторая вьюха. Подмена вьюхи для родительских терминов с помощью модуля TVI.
нельзя ли поподробнее о настройках вьюх? как заставить отображаться во вьюхе только термины, которые являются дочерними по отношению к какому-то термину. т.е. я понимаю что можно критерий фильтрации со списком нужных терминов, но это придётся вручную для каждого термина делать страницу и прописывать какие именно подкатегории там будут отображаться. Модуль TVI к сожалению под D7 есть только в дев версии, которая нормально не работает. Судя по моему знакомству с этим модулем основная его функция - это заменять страницу вывода содержимого по термину на вьюху. Если предположить, что этот модуль работает как должен, то все равно не понятно как он будет регулировать вывод дочерних терминов для разных терминов-родителей используя только одну вьюху. Я так понимаю, что этот модуль только назначает вьюху для вывода, а всё волшебство настроено в самой вьюхе. Сегодня целый день пытался настроить, но так ничего похожего не получилось. Ещё хотел спросить, у Вас добавление новой подкатегории сводится только в добавлении нового термина, а всё остальное делает вьюха или ещё нужно какие-то манипуляции выполнять?
Почитайте доки views об взаимосвязях и аргументах
Это можно обойти хуками и без TVI, но без элементарных знаний PHP вам не обойтись.
Да.
спасибо, уже разбираюсь. навигация работает, теперь осталось реализовать условие чтобы при переходе на последний термин в иерархии показывалось содержимое