Как мне показать мои продукты?

15

Мне удалось создать тип продукта и импортировать данные о нем, поэтому у меня теперь есть список продуктов.

Как теперь получить товары для показа? Нужно ли создавать тип контента с нуля и добавлять поля вручную, или есть способ создать тип контента?

Мартин Дуйс
источник
Аналогично этому, используя почтовый модуль HTML, как связать элементы в электронном письме с отдельной страницей продукта? Например, как добавить все ссылки на изображения или ваучер, который мы отправляем по электронной почте в Drupal 7?
jeckey011
@ jeckey011, я думаю, что вы должны добавить это как отдельный вопрос и скорее ссылку на него.
Мартин Дуйс

Ответы:

29

Как упоминалось в pjskeptic, вы можете создать общий механизм отображения с использованием представлений (или, возможно, панелей), но основной способ установить один фрагмент содержимого в качестве отображения продукта - это использование пользовательского типа содержимого с полем « Ссылка на продукт » с помощью кнопки « Добавить в корзину». Форма отображения форматирования. Это имеет ряд явных преимуществ:

  1. Ваш узел отображения продукта получает несколько режимов просмотра (например, тизер или полная страница против RSS) и может получать комментарии (например, отзывы пользователей и оценки, если вы его настроили).
  2. Поля продукта будут отображаться и отображаться в узле, включая поле «Цена продукта» по умолчанию, но также и настраиваемые поля, добавляемые в продукты (например, поле «Изображение»).
  3. Один узел отображения продуктов может ссылаться на несколько продуктов через поле «Ссылка на продукт», которое превращает форму добавления в корзину в форму выбора продукта и / или форму выбора атрибута стиля Ubercart. Однако, в отличие от атрибутов Ubercart, форма выбора атрибута продукта здесь содержит зависимые атрибуты, отображает только допустимые параметры атрибутов на основе продуктов, на которые вы ссылаетесь, и динамически обновляет все поля продукта, отображаемые на узле, для отображения выбранного в данный момент продукта. Это приводит к разрешению уникальных изображений на основе выбора продукта или атрибута, как показано на продукте кружка в демонстрационном магазине.

У нее есть и другие преимущества, но стоит отметить, что мы понимаем, что это усложняет процесс создания демонстрации продукта. На раннем этапе мы приняли решение создать, как нам казалось, звуковую архитектуру (отделяющую определение продукта от его отображения) и упростить аспект администрирования магазина за счет использования профилей установки и дополнительных модулей. Для этого вы можете использовать профиль установки Commerce Kickstart для создания установки Drupal 7 + Drupal Commerce, которая включает в себя предварительно сконфигурированный дисплей Product.тип содержимого и добавляет поле изображения к базовому типу продукта. (К сожалению, вам нужно знать Git, чтобы захватить это, поскольку упаковка профилей установки в настоящее время не работает для профилей Drupal 7.) Кроме того, мы работаем над проектами, которые позволяют вам массово создавать продукты / отображения продуктов и добавлять / редактировать продукты непосредственно в форме редактирования узла, используя пользовательский виджет поля Product Reference .

Чтобы настроить это вручную, выполните следующие действия:

  1. Добавьте тип узла с именем Product display . Отправьте, используя кнопку Сохранить и добавить поля .
  2. Добавьте поле «Ссылка на продукт», в котором используется виджет текстового поля « Автозаполнение». Сделайте обязательным поле и разрешите неограниченное количество значений (даже если вы собираетесь использовать только одно значение).
  3. Перейдите на вкладку « Управление отображением » и убедитесь, что в этом поле используется форматер отображения формы « Добавить в корзину» . Вы также можете перемещаться по полям продуктов, которые вы видите здесь.
  4. Создайте отображение Product, ссылающееся на один из ваших продуктов, и проверьте тизер узла и полные просмотры страницы. Вы можете изменить способ отображения полей продукта. Для этого вам нужно перейти на страницу управления отображением вашего типа продукта и обновить там настройки форматирования дисплея. Вы можете настроить порядок сортировки и видимость полей продукта только на страницах редактирования типа контента, но не в настройках форматера.

Это еще не все, но это должно помочь вам начать. Этот процесс на самом деле является темой статьи, которую я написал для первого выпуска Drupal Watchdog. Я надеюсь стать постоянным участником темы Drupal Commerce, поэтому я призываю вас подписаться, если вы не были в DrupalCon, когда был выпущен журнал. Возможно, статьи появятся на сайте в конце концов после печати.

Для дальнейшей поддержки я бы посоветовал вам просмотреть сообщения на форуме и документацию по этой теме на DrupalCommerce.org и проверить IRC-канал #drupalcommerce на irc.freenode.net. Если вы обнаружите какие-либо ошибки или захотите внести свой вклад в обсуждение юзабилити, мы будем рады получить ваши отзывы как разработчика сайтов по актуальным вопросам в нашем трекере.

О, и если вы визуальный ученик, я прохожу этот процесс и объясняю, как работает архитектура, в моем видео-сеансе из DrupalCon Chicago . Это лучшее видео на сегодняшний день, хотя я бы хотел, чтобы в будущем были выпущены небольшие скринкасты, нацеленные на конкретные этапы создания сайта Drupal Commerce.

Удачи!

Райан Шрама
источник
2
Вау. Спасибо, Райан. Я действительно ценю ваши усилия, чтобы ответить на это. Я собираюсь прочитать ваш ответ 4 или 5 раз, а затем попробовать ...
Мартин Дуйс
Рад видеть тебя здесь, Райан. Я действительно взволнован возможностями commerce.module.
cam8001
Привет Райан. Благодаря вашей помощи теперь я могу заставить это работать для отдельного предмета. Что я не получаю, так это как создать представление списка моего каталога? Как я могу ссылаться на все продукты?
Мартин Дуйс
Классные вещи, Райан. Если я хорошо понимаю, для каждого нового продукта, который я создаю, новый узел должен быть создан «вручную», скважиной. Это выглядит тяжелым недостатком, или, может быть, я что-то упустил?
Август
Верный. Это похоже практически на каждую существующую систему электронной коммерции, но вы должны упростить UX, используя Inline Entity Form для создания сущностей продукта на самой форме редактирования узла. Мы просто не закончили IEF, когда выпустим Commerce 1.0. ^ _ ^
Райан Сзрама
4

В Drupal Commerce продукты не отображаются как узлы. Вы можете отобразить их с помощью представлений.

Создайте новое представление и выберите Commerce Product в качестве типа представления. Чтобы отобразить отдельный продукт, настройте представление для принятия идентификатора продукта или аргумента SKU. Затем у вас будет доступ ко всем полям продукта. Чтобы отобразить несколько продуктов, добавьте фильтр или аргумент для категории или любых других критериев, по которым продукты должны быть перечислены.

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

pjskeptic
источник
Что именно вы подразумеваете под «Для отображения отдельного продукта, настройте представление для принятия идентификатора продукта или аргумента SKU?» Могу ли я сделать это, добавив элемент в поле «Критерии фильтра», например «Коммерческий продукт: SKU (выставлено)», и мне нужно будет ввести SKU там? Значит ли это, что мне придется делать это для каждого продукта?
Мартин Дуйс
1
По вашему мнению, создайте отображение страницы и укажите путь к products /% или что-то в этом роде. % Позволяет вашему представлению принимать все последующие продукты / в качестве аргумента. В зависимости от версии модуля Views вы можете увидеть контекстные фильтры в разделе Advanced или раздел Arguments. Вы можете добавить фильтр для Commerce Product: SKU. Вы должны иметь возможность предварительного просмотра результатов, введя существующий SKU продукта в текстовое поле рядом с кнопкой Preview.
pjskeptic
Вот отличное объяснение аргументов представления drupalove.com/drupal-video/using-views-arguments-drupal . Это для Drupal 6, но это та же концепция, что и для Contextual Filters в Drupal 7.
pjskeptic
Чтобы составить список нескольких продуктов, создайте представление с типом представления, установленным в Commerce Product, и настройте критерии фильтрации для отображения продуктов, которые вы хотите отобразить.
pjskeptic
Большое спасибо за Вашу помощь. Я сделал именно то, что вы предложили, и это сработало как шарм. Хотя я понимаю причину того, что @rszrama говорит в своем ответе, в настоящее время невозможно легко создать полный список каталогов, что мне и было нужно.
Мартин Дуйс
1

Если у вас есть продукты в коммерции, вы можете объединить структуру Райана Сзрама (т.е. создать тип контента «отображение продукта») и мощь представлений.

Сначала создайте отображение продукта КОНТЕНТ-ТИП (Администратор >> Структура >> Типы контента >> Добавить тип контента). Следуйте инструкциям Райана Шрама из его ответа на этой странице.

Во-вторых, создайте свой первый продукт для одного из ваших продуктов.

В-третьих, создайте новый вид (Администратор >> Структура >> Виды >> Добавить новый вид). Установите представление для отображения содержимого типа «Отображение продукта». Настройте вид в соответствии с вашими вкусами. Теперь у вас есть список товаров.

Уильям Иди
источник