Zap is using drupal commerce combine with search API/ Facet API to build a power shop which suitable for all sizes. It's very friendly to end user and flexible for manager website.
To work with Drupal commerce, you should understand clearly concept Product Display and Product variations in Drupal commerce before. So, we strongly recommend you read Product document before continuing.
You can reference to Drupal Commerce to learn more about commerce
1. Commerce modules
If you want to apply Zap shop to your exist site, just install and enable dexp_Zap_commerce module package. System will install some modules is required:
- Commerce 7.x-
- Rules 7.x-
Address Field 7.x-
And some related modules
inline Entity Form 7.x-
- search_api 7.x-
- search_api_db 7.x-
- search_facet_api 7.x-
- facet_api 7.x-
- shipping 7.x-
- customer 7.x-
- fivestar 7.x-
- votingAPI 7.x-
And create product views, rules sale off automatically.
2. Zap Product structure
a. Product entity and Product Display content type
Zap is a clothes shop in demo, but you can easily build any shop type which you want.
When you installed and enabled Drupal Commerce, a entity called Product is available, you can see it in Store >> Products >> Product with basic field such as: title, SKU, status.
In Zap shop, we add more properties to product entity.
- Product Images
- Product Price
- Product Size
- Product Color: It is a term reference, you can access to http://yoursiteurl.com/admin/structure/taxonomy/product\_color to add/modify color.
- Characteristics: It is a term reference used for mark product with value such as: New, Featured, HOT... You can access to http://yoursiteurl.com/admin/structure/taxonomy/product\_characteristics to add more value or modify them.
- Sale Event: It is a taxonomy, user can define more discount rule and apply to products.
It's up to your shop. You can add/remove more fields to meet your requirement when building properties for product.
We have created a product display content type to show products with some additional fields:
- Product variations: It is product reference
- Product Catelog: It is used for classifying product such as categories. It is also term reference, so you can create sub category if you want. You can access to http://yoursiteurl.com/admin/structure/taxonomy/product\_category to add more value or modify them
- Product Brand: It is a taxonomy, You can access to http://yoursiteurl.com/admin/structure/taxonomy/product\_brand to add more value or modify them.
- Product Availability: It is a taxonomy, You can access to http://yoursiteurl.com/admin/structure/taxonomy/product\_availability to add more value or modify them.
- Product Rating: It allows user rating a product. We used Fivestar module to do this function
b. Configure Server search/index:
Zap theme is using Search API and Facet API to search/index product. All information about search api at link: http://yoursiteurl.com/admin/config/search/search\_api
Create Search server: If server search NOT exist, click on Add server link to create a new server.
Create indexing: Zap is using search_api_db to index data into database. You can use Apache Solr instead of database. With commerce_search and commerce_search_api system will create index for Product Display content type automatically. So, we can index and search on this content.
c. Demo Zap shop using Drupal Commerce
3. Widgets Product
Zap shop comes with some useful widgets block. It is usually use in commerce websites such as:
- Top Rating: a block view to show products with average user rating from high to low
- Bestseller: a block view to show products best seller
4. Product Settings
Product Image clicking configuration
In teaser view: there are 3 options when user clicking on image product
- Do nothing
- Link to content: link to detail page
Open Pretty box: open a Pretty box
In product detail page, there are 2 options when user clicking on image product
- Open Pretty box: open a Pretty box