You are hereБлоги / Ёж's blog / Ubercart. Создание электронного магазина, часть 3 - Классы продуктов

Ubercart. Создание электронного магазина, часть 3 - Классы продуктов


Ёж 12 November 2008

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

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

  • Например, Вы продаёте в своём магазине рубашки и брюки, при этом используя атрибуты и их опции (атрибутам посвящена предыдущая статья). И предположим, что для рубашек Вам нужно задать размер и цвет, а для брюк только размер. В этом случае Вы легко можете создать два класса продуктов "Рубашки" и "Брюки", и для каждого из этих классов добавить именно те атрибуты, которые нужны в каждом конкретном случае.
  • Вы используете замечательный модуль ССК для добавления полей к типам материалов, но Вам не нужно добавлять одни и те же поля ко всем типам Ваших продуктов. Например, для книг, которые Вы продаёте, Вам нужно добавить поле, в котором будет указан автор книги. Но ведь для тех же брюк Вам не нужно указывать никакого автора. Так что, как видите, вполне логично создать класс "Книги" и добавить поле для автора только в этом классе.
  • Вы используете замечательный модуль Views для отображения Ваших нод. Например, в одном блоке Вам нужно отобразить список имеющихся в наличии рубашек, а в другом - список шляп. Создаёте два класса "Рубашки" и "Шляпы" и при использовании Views легко фильтруете отображение по типу материала.

Безусловно, я здесь перечислил только несколько примеров, на самом деле примеров можно привести столько же, сколько иголок у ежа на спине.

Теперь перейду к созданию классов для Ваших продуктов:

  • Заходите в Administer › Store administration › Products > Manage classes (Управление сайтом > Управление магазином > Продукты > Управление классами) (admin/store/products/classes).
  • Заполните форму под заголовком Add a class (Добавить класс). Там будет два обязательных для заполнения поля - Class ID (ID класса) и Class Name (Имя класса). ID каждого класса должно быть уникальным, это имя используется Друпалом для работы с классами, в то время как Имя класса - это заголовок, который предназначен для Вас и других пользователей. Внимательно читайте текст контекстной помощи, он там написан не просто так.
  • Сохраните изменения. Теперь у Вас есть новый тип материалов, относящийся к классу Продукты. С этим типом материалов можно манипулировать точно также, как и с любым другим типом материалов на Вашем сайте.
  • Добавляйте атрибуты и опции для продуктов Вашего нового класса - для них это делается точно так же, как и для продуктов базового класса Продукт.

Будьте очень внимательны, если Вы захотите удалить какой-либо класс Ваших продуктов. Если у Вас есть несколько товаров, относящихся к тому классу, который Вы хотите удалить - то вряд ли удаления класса будет хорошим решением - это приведёт к необратимым изменениям для уже созданных продуктов этого класса.

С уважением, Ёж

]]>]]>
ССылки

RSS-материал