Комментирование продуктов в Drupal Commerce. Толи вопрос, толи предложение :/

Главные вкладки

Аватар пользователя andreystrelkov andreystrelkov 11 апреля 2013 в 10:33

Как многие наверно знают, что у понятия product нет понятия комментарии
Получается нет как таковой возможности комментирования того или иного продукта на сайте, (за исключением тех случаев, когда разработчики используют навеянный создателями commerce - тип продукта product display)
но так как я (да и наверно многие другие) не признают этот тип продукта (это лишняя геморойная операция), как я считаю продукты проще выводить views на своё усмотрение в любом желанном виде.

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

Попрошу критиковать его, т.к. вполне возможно не true путём иду.

Итак... как я думаю по этому поводу.

1) Нужно создать правило в Rules, мол при создании нового продукта, создать новую entity с типом node
в которой указать, что её заголовок будет равен product-id, её тип это заранее созданный тип продукта, например - ноды для комментариев. ну и её автор - это текущий пользователь

Т.о. я при создании продукта, создаю ноду в которой присутствует ID созданного продукта, он будет связкой между ними

1.5) Теперь стоит задача, чтобы можно было видеть один продукт подробно с описанием фотографией и т.п., а где нибудь снизу,
или справа была форма комментариев ноды название которой равно id продукта в текущий момент открытый.

2) Поэтому будем думать, что допустим у нас есть вьюха которая выводит все продукты, и пускай название продукта будет
переопределено как тоже название, только ссылкой на какую страницу (panels или views)
на которой показывалось бы подробно о товаре по которому щёлкнули.

2.1) Как вариант допустим это вьюха, у которой есть контекстуальный фильтр на id который посылается в ссылке выше, и в которой как то подробно со всеми полями показывается продукт, но как в этом вьюхе показать форму комментариев... чувствую похоже никак
ибо вьюха на это не способно, вывод комментариев - ЕСЛИ Я НЕ ПРАВ - ПОПРАВЬТЕ ПОЖАЛУЙСТА

2.2) Второй вариант это наверно с помощью Panels, и даже наверное с помощью Mini Panels, ибо они могут выводить различные формы у различных энтити. Но тут я уже не очень разбираюсь, с mini panels, получается я её создаю и мне нужно ей сказать чтобы она выводила форму комментариев у того node id, который находится в ссылке, а как это делается? REQUIRED CONTEXT? - если таковой... то всё бы хорошо, но похоже это глюк у panels, он не чует mini panel если в ней настроен REQUIRED CONTEXT, если же
просто CONTEXT, то там странное первое поле которое требует ID, но мне нужно чтобы ID он самый взял...

А может я совсем всё криво делаю... и меня пора уже расстрелять, т.к. всё проще делается другим путём...
? Smile

Комментарии

Аватар пользователя andreystrelkov andreystrelkov 11 апреля 2013 в 10:44

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

Аватар пользователя dgastudio dgastudio 11 апреля 2013 в 10:45

велосипед он такой велосипед...

/*но так как я (да и наверно многие другие) не признают этот тип продукта (это лишняя геморойная операция), как я считаю продукты проще выводить views на своё усмотрение в любом желанном виде.*/

Нужно создать правило в Rules, мол при создании нового продукта, создать новую entity с типом node

для этого и служит product display.

Аватар пользователя multpix multpix 11 апреля 2013 в 16:11

"andreystrelkov" wrote:
Как многие наверно знают, что у понятия product нет понятия комментарии
Получается нет как таковой возможности комментирования того или иного продукта на сайте, (за исключением тех случаев, когда разработчики используют навеянный создателями commerce - тип продукта product display)
но так как я (да и наверно многие другие) не признают этот тип продукта (это лишняя геморойная операция), как я считаю продукты проще выводить views на своё усмотрение в любом желанном виде.

Человек, это у тебя от непонимания (или неприятия)архитектуры.
ищи иное или пиши свое.

по сабжу:
комментировать нужно витрину,
зачем комментарии бухгалтерским записям?

Аватар пользователя andreystrelkov andreystrelkov 12 апреля 2013 в 9:27

Всем спасибо за интерес

"kervi" wrote:
велосипед он такой велосипед...
/*но так как я (да и наверно многие другие) не признают этот тип продукта (это лишняя геморойная операция), как я считаю продукты проще выводить views на своё усмотрение в любом желанном виде.*/
Нужно создать правило в Rules, мол при создании нового продукта, создать новую entity с типом node
для этого и служит product display.

Да согласен, в приниципе велосипед делаю, но т.к. я делаю не на Kickstart а с нуля, то я не хотел повторять полностью Product Display, т.к. есть в нём нюансы которые мне не нужны

"multpix" wrote:
по сабжу:
комментировать нужно витрину,
зачем комментарии бухгалтерским записям?

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

"drupby" wrote:
инфа для раздумий
http://drupal.org/project/field_comments
http://netspark.ru/useful/modules/modul-user-comments
там уже придумали - осталось передумать под свои нужды

большое спасибо за модули, очень интересные, но к сожалению из коробки не поддерживают commerce

Аватар пользователя multpix multpix 12 апреля 2013 в 10:01

"andreystrelkov" wrote:
Но как я понимаю под витриной вы имеете ввиду набор товаров одного типа, у меня такового нет, у меня каждый товар будет уникальным.

неправильное понимание, объясню:

в простом случае это сущность node
(в зависимости от условий, различное кол-во типов материала, с различными наборами полей).
и вывод сего на страницы сайта (каталоги подборщики и т.п. интерфейсы)
это витрина (ее нестрашно и анониму показать и дать пощупать и комментировать)

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

вот где-то так)

Аватар пользователя andreystrelkov andreystrelkov 12 апреля 2013 в 10:25

"multpix" wrote:
неправильное понимание, объясню:
в простом случае это сущность node
(в зависимости от условий, различное кол-во типов материала, с различными наборами полей).
и вывод сего на страницы сайта (каталоги подборщики и т.п. интерфейсы)
это витрина (ее нестрашно и анониму показать и дать пощупать и комментировать)
commerce в числе прочих добавляет сущность product
(с которым связываем наши node)
это бухгалтерия, это учет.
т.е. планировать функ-ал комментариев для позиции в учете, ет как-то....
глупо)
другое дело, если по условиям, допустим отдельная группа менеджеров занимается управлением товарным рядом, и им необходима связь, то это может решаться редакциями товара, полями примечаний и коментариями.
вот где-то так)

Брррр... запутался =)))
А как бы Вы посоветовали сделать?

Аватар пользователя marazmus marazmus 12 апреля 2013 в 10:50

Короче, Коммерц сделал для буржуинских нищебродов, которые не могут купить себе 1С-Бухгалтерию ( Biggrin ) и которые вынуждены вести УЧЕТ в друпал+коммерц. Отсюда вся эта заморочка с продуктами и их дисплеями. Продукт - это для внутреннего употребления, учета и отчетности. Дисплей - для отображения на сайте.

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

Аватар пользователя Andruxa Andruxa 12 апреля 2013 в 10:59

Если сравнивать commerce с ubercart, то получаются такие аналогии:

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

- в DC SKU материлизовали в сущность product, её предназначение то же, что и у артикула - ведение учёта
- изначально, в DC нет нод, являющихся карточкой товара, их необходимо создать, этот процесс может быть автоматизирован
- в DC можно отдельно управлять карточками товара (это может делать, например, контент-менеджер на фрилансе, которого никто не подпустит к учету) и отдельно - самими артикулами (это может делать штатный сотрудник, которого стрёмно подпускать к контенту сайта)

в обоих случаях SKU/product - это то, что будет непосредственно продано покупателю, а нода-товар или нода-дисплей товара, это упаковка, которую покупатель видит на витрине.

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

Аватар пользователя drupby drupby 12 апреля 2013 в 13:28

"andreystrelkov" wrote:
большое спасибо за модули, очень интересные, но к сожалению из коробки не поддерживают commerce

а написать один раз глядя в исходники примеров ?
берёшь модуль user_comments и пишешь commerce_comments и выкладываешь в паблик - сообщество наверняка одобрит , если напишешь граммотно

Аватар пользователя anton_k anton_k 1 ноября 2013 в 1:17

всем привет. недавно взялся осваивать DC, и вот на чем застрял:
во вьюшке для анонса, если определить для (Товар) Поле: Изображение "Изображение как ссылка на Содержимое", переходит на produkt, а не на содержимое (нода-дисплей товара). Соответственно, анониму не предоставляется вообще возможности ткнуть в картинку. Подскажите, пж, как быть... или куда пойти (чтоб почитать).

... разобрался. извиняюсь за беспокойство

Аватар пользователя geotype geotype 1 ноября 2013 в 15:25

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

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

Аватар пользователя anton_k anton_k 1 ноября 2013 в 20:55

Просто переопределил,и открыл анониму доступ к просмотру товара.
Вроде бы все работает, но насколько это правильно, сказать не могу. Это нужно спрашивать у гуру.