Уважаемое Комьюнити, проблема в следующем: нужно создать товар в котором будут несколько его вариантов как например здесь http://www.don-parfum.ru/product_6152.html. То есть имеется наименование, есть несколько его объемов или размеров, но как это сделать на одной странице - ума не приложу...
Я думаю магазиностроители сталкивались с данным вопросом, не откажите в помощи.
Комментарии
Вариант попроще - воспользоваться модулями:
1. Attribute (входит в Ubercart) - можно задать объемы/размеры через атрибуты, присвоить каждому атрибуту свой артикул (SKU) и цену.
Пользователь сможет выбирать нужный ему размер/объем (цвет и т.д.) из раскрывающегося списка.
2. UC Option Images - каждому атрибуту можно задать свою картинку, которая будет меняться через js при выборе атрибута из списка.
3. UC Attribute Stock Filter - фильтрует товары с атрибутами, отсутствующие на складе
4. UC Ajax Attribute Calculations - изменяет цену в зависимости от выбранного атрибута при его выборе из списка
5. UC attributes in cart - пользователь сможет менять атрибут в корзине.
Не уверен, что все эти модули будут работать одновременно.
Результат будет отличаться от примера (атрибут выбирается из списка).
Если же требуется сделать, как у Адидаса - я бы пошел следующим путем:
- Создал тип материала "Описание товара", в нем с помощью CCK Node Reference сделал бы ссылки на материалы типа "Товар", которые и являлись бы непосредственно товарами со своими особенностями (цвет, объем, размер и т.д.)
- или связал бы описание товара с самими товарами через таксономию.
далее - организовать вывод в следующем порядке:
1. Описание товара - заголовок, описание, изображение
2. Связанные товары - изображение, описание, цена, добавить в корзину
3. Описание товара - комментарии.
Это можно сделать либо с помощью представлений (views), либо темизацией шаблона для материалов типа "описание товара".
Как-то так...
- это хорошо, с этим проблем не возникло
- с этим способом проблема, я собственно через него и делал, когда зашел в тупик... если плясать от term description, то после описания и товаров нет возможности прикрутить комментарии (т.к. они к термину не прикручиваются)
все соответственно через views:
+ здесь все понятно
??? здесь тоже все понятно, но только если первый и второй пункты делать в разных вьюсах, если в одном, то заголовок, текст и описание родительского тотвара повторяется с каждым дочерним, как это победить?
если слепить первое и второе, то здесь проблем не должно быть.
Понимаю, что пишу уже комментарий поздновато, но у меня не получается создать второй, третий и тд SKU на одной странице.
Надо как здесь http://www.don-parfum.ru/product_7966.html
У меня как будто SKU по умолчанию
Product information
SKU: *
и все Attributes идут как дополнительные товары..цена плюсуется..
к примеру, Product стоит 0 рублей, как я ставлю,
а attributes 100 рублей..
и системы плюсует 0+100=100
Подскажите пожалуйста, как attrubutes присвоить SKU..я в тупике
Спасибо
P.S. - в первом варианте необязательно использовать раскрывающийся список, можно и радиобатоны, и чекбоксы (множественный выбор), но у меня с ними не работал Option Images
основная разница между 1 и 2 - кол-во кнопок "добавить в корзину": во втором случае их будет несколько.
Второй вариант подходит, спасибо большое, пошел пробовать, как сделаю отпишусь. Чет я про node reference не подумал...
В представлении создать 2 вида "вложение", первый выводится перед видом "страница", в нем заголовок, описание, изображение
Потом идет вид "страница", в нем выводятся связанные товары
Последним идет снова вид "вложение", в нем выводятся комментарии к заголовку товара
с этим понятно, извините, был балван. Не пойму почему сам не додумался..[/quote]
но вот с
Если я создаю view с типом материал, то он у меня не видит комментарии как поля, как это бороть (в отдельном view соответственно все нормально...)?
P.S. Извините конечно за назойливость и непонятливость, но так далеко в дебри views еще не лазил. Заранее благодарю за ответы.
P.P.S. Извините, снова был болван и слеп. все нашел. Andruxa большое спасибо за помощь!
подскажите еще пожалуйста: комментарии (заголовок текст ответить) я вывел, а как на этой же странице вывести форму добавления комментария? вообще не пойму...
Хм... Признаться - не знаю.
Сейчас поковырял views - появился встречный вопрос: а как удалось вывести комментарии?
Вот все настройки views
![](http://rostovats.ru/test/1.png)
![](http://rostovats.ru/test/2.png)
![](http://rostovats.ru/test/3.png)
Просто в качестве аргумента NID и потом с него брал комментарии
Не могу ничего подсказать...
Поискал модули - ничего не подошло.
Наверное, стоит подождать совета более опытных людей.
Либо смотреть в сторону шаблона node-описание_товара.tpl.php
А можно здесь по подробнее, особенно про "я создал поле CCK viewfield" это тип CCK'я такой?
Я думаю, нужно ковырять в этом направлении
http://api.ubercart.org/api/function/uc_attribute_load/2
и/или
http://api.ubercart.org/api/function/uc_product_get_attributes/2
В принципе по основной задаче вопрос можно считать закрытым. По комментариям создам отдельную. Andruxa, еще раз спасибо, заставил мой мозг думать ))
Пожалуйста.![Smile](https://drupal.ru/sites/all/modules/contrib/smiley/packs/kolobok/smile.gif)
Мой мозг тоже потрудился, это полезно
М.б. Views Custom Field поможет, если написать в нем вызов формы добавления комментария.
Или прилепить снизу блок...
Просьба - если получится решить, описать решение.
Да, реализуется модулем CCK viewfield.
Потом в типе материала добавляется поле, и при создании/редактировании материала указывается представление, соответствующее материалу.
Ну а вызывается оно из шаблона.
Кстати, в цитируемом посте я был неправ насчет "комментарии и форму для ввода новых - через шаблон, оставив в нем код, отвечающий за их вывод."
В шаблоне материала этого кода нет, там одна переменная $content поэтому пост и отредактировал
Можно воспользоваться советами http://drupal.ru/node/25903
Andruxa еще раз спасибо, все реализовал через CCK viewfield. Оказалось очень удобно и не нужно изобретать велосипед.
Был рад помочь.
Если не затруднит, можно ссылку на готовое решение?
создаем 2 типа материалов:
доп. поля у описания товара:
А может ли быть у каждого SKU своё кол-во на складе? Т.е. к примеру Балон 10л, и балон 20л - это разные физ. еденицы, соответственно и разное кол-во на складе может быть
1 SKU это 1 товарная позиция.
Если включено отслеживание товарных запасов node/[nid]/edit/stock, то разные товары (ноды) с одинаковым SKU будут уменьшать складские остатки этого SKU при оформлении заказа.
К примеру - при включении многоязычности с переводом, каждый перевод товра на другой язык будет являться отдельной нодой, но SKU у них будет одинаковый.
При оформлении заказа, со склада будет списываться SKU, вне зависимости от языка ноды (её nid).
Если у них разные SKU, то кол-во на складе будет разным.
Т.е. получается таблица products - это сами продукты, а таблица нод(тип материала продукт) - это как бы общая группа объединяюшая похожие товары, которая группирует их по Заголовку ноды? (правильно мыслю?)
chel: Не совсем понял...
Если говорить от таблицах, то таблица node - это своего рода реестр всех нод, вне зависимости от их типа.
В таблице uc_products следующие поля:
vid, nid - со вторым понятно, значения этих полей совпадают, так что vid - это явно не vocabularyID, м.б. - редакция ноды;
model - там как раз SKU;
list_price, cost, sell_price - соответственно, 3 цены uc;
weight, weight_unit ... lenght_units - думаю, понятно;
pkg_qty, default_qty - кол-ва в упаковке и по умолчанию;
ну и т.д.
Т.е. таблица uc_product - это своего рода набор полей, делающих ноду продуктом.
Когда мы кликаем на продукцию, то получаем товары с разными атрибутами объединяемыми как бы в одну продукцию. На основе чего задается в таблицах такое объединение по сути разных товаров с разными SKU, как бы в отдельную продукцию (для конечного пользователя выглядит как товар с разными характеристиками) являющимися по сути разными товарами.
О, там много таблиц...
uc_attributes
- там список атрибутов, который мы видим на странице admin/store/attributes/overviewuc_attribute_options
- список опций со страницы admin/store/attributes/[aid]/optionsuc_product_attributes
- привязка атрибутов из uc_attributes к нодам, с указанием заголовка атрибута и опции по дефолту, это можно наблюдать на странице node/[nid]/edit/attributesuc_product_options
- привязка опций к ноде, с указанием их дельт стоимости и веса: node/[nid]/edit/options, а дефолтная опция, как уже говорилл - пишется вuc_product_attributes
uc_product_adjustments
- тут, собственно, комбинациям нода+опции назначаются SKUостаются еще
uc_class_attributes
иuc_class_attribute_options
, они у меня пустые - не знаю, что в них...Стоп.
Мы сейчас говорим именно об атрибутах продукта, или о том решении, которое обсуждалось в начале комментариев?
(заголовок, к которому через node refrence прибиты несколько продуктов)
uc_product_adjustments - похоже зависимые атрибуты товаров - круто, спасибо!
Скорее мы говорим о первом варианте решения (развиваем его).
Вариантов было два, как я понял: Простой, и как у Адидаса.
ну,они там в виде "a:1:{i:2;s:2:"10";}"
да и голыми руками в БД лазить - тоже не гут
Ребят, результат можете посмотреть здесь: http://terraparfum.ru
Вполне достойно получилось и так как хотелось.
Понравилось.
Поворчу немного для порядку ))
- некоторые изображения продукта без полей, получается не очень удобно читать:
- в панели информация о покупателе ашыпко:
- ссылка на корзину только в праймари, как-то привык видеть ее в сайдбаре с кол-вом товаров и их суммой, но это наверное личное
Чьорд, а куда подевались приаттаченные скриншоты?
Видимо, создавать 2 продукта: майка1 с атрибутами S и L, майка2 - можно вообще без атрибутов, раз размер один.
Это же разные майки, насколько я понимаю, раз нельзя объединить их размеры в один атрибут - S,M,L.
Тогда лучше использовать 2 продукта - с разными изображниями и описаниями.
Где именно?
Хде?! О_о
И мое имхо тоже, только клиент не захотел.
В твоем случае лучше такой же геморой нагородить как у меня. Другую логику так и не придумал. Ситуация та же, только у меня флаконы 30, 50 мл, а другие 30 100 и т.д. Таким образом я сделал каждый флакон - товар и "Описание товара", в которое через node reference добавляются товары.
Дык, скриншоты пошли по женской линии почему-то...
http://terraparfum.ru/catalog/chanel/chanel-chance
здесь изображение без полей и текст плохо воспринимается
Чекаут:
...чтобы войти под своей учетной записью
Нашел модуль Ubercart Sub-Product - он вроде бы полностью повторяет решение с вьюсами
To casey_2000. У тебя каталог товаров получается состоит не из товаров, а из нод типа "Описание товара"?
При клике на какой-либо товар в блоке спец-предложений, открывается страница типа "Описание товара", если я правильно понимаю. А каким образом, открывается она, а не сам товар?
Да
Абсолютно не правильно. Просто открывается нода "описание товара" к которой через node reference прикреплены "товары"
У меня каталог не Ubercart'овский а на views'ах сделанный
Спасибо, понятно )
Для друпалера такая огранизация магазина, его наполнение выглядит вполне логичено и просто. Но, как мне кажется, добавление товаров, категорий, для заказчика может показаться слишком сложным.
Наоборот в данном конкретном случае заказчику понравилось. Специфика просто такая, что существует аромат, а к нему: туалетная вода, парфюмированная вода, разный литраж и т.д.
http://drupal.org/project/uc_subproduct