Importance of planning – Attribute Sets

Featured Image

We all love fast development. Clients want to have the team who will be able to finalize their online store as soon as possible. They define the design, add a few test products, set up transaction emails and are anxious to see their online store online. In some cases, one week before the launch, client starts to input the products. If he is unfamiliar with Magento, there is a high chance he will focus on “Add Product” button first. Woah… We missed one step before this: Attributes and Attribute sets.

As defined on Magento site, an attribute set is a collection of attributes. Let’s imagine we are selling a shirt. In addition to the default Magento attributes, you want to show your customers some extra information in the front-end:

  • Color
  • Shirt Size
  • Manufacturer (Brand)
  • Material (ex. Cotton, wool, …)

Attribute set is nothing more than product type in your online store. Shirts will have different attributes than watches or sunglasses. So, before you stat inserting the products directly under “Default” attribute set where you will put them all in the same group, try to think about what attribute sets will you have. Assign relevant attributes to the relevant attribute sets and only than start adding products.

Do not do this too fast because you might end doing something that is not logical. One of the common example is the “Size” attribute. When a merchant sells Shoes and Shirts, he usually uses the same attribute “Size” there. However, it would be much better to separate those and have “Shoe Size” and “Shirt Size” attribute since those have different values. They both can be labeled the same, but we must be sure they will be separate entities in the database.

To summarize the point: Do not start adding products before you created the attribute sets you will use. If you are interested how to create attribute sets, check Magento’s knowledge base.


About Tomislav Bilic

Founder and CEO

Tomislav is a founder and CEO at Inchoo. Enjoys traveling - especially quick getaways, traditional cuisine (from most cultures), good wine and strong rakija.

Read more posts by Tomislav / Visit Tomislav's profile

13 comments

  1. How do you handle multiple color sets?
    I have about 6 brands that have different names for the same color across different products and they even change each season.

    I can’t keep creating attribute sets for each product just to display the correct list of colors/marketing names.

    If I can create a flat table of product against [“comma”,”delineated”,”list”,”of”,”colors”] then the color attribute list would be generated on the fly when you create the matrix of associated products.

    ALSO RELATED

    When you filter products in Layered Navigation a Flat Table of Standard colors could contain associated color names
    White:[“white”,”bone”,”cream”,”beige”,”Arctic White”,”Blizard”,”Polar Bear”],
    Black:[“midnight”, “Ebony”, “Graphite”,”Charcoal”]

  2. Hey thanks.. this is correct. I did the same way but end up with some complex situation. So I have both Shoes and Shirts as a subcategory of a main fashion category.
    Now when i want to filter the products , i have two set of sizes on my left .. wondering how to deal with this situation ??

  3. Hi,

    I have query, I want to create an attribute with child attributes like i have colors Blue, Red an attribute and there sub colors in Blue like exp- Light Blue, Dark Blue and in Red ex- Light Red, Dark Red etc.

    So please give me idea how can i create a parent attribute with their child attributes.

    Thanks in advance

    1. Hi,

      You can create a new color attribute “color_for_filtering”. This attribute would have “Use In Layered Navigation” set to “Filterable (with results)”.

      One product can have “color” set to “Dark Blue” and “color_for_filtering” set to “Blue”.
      Another product can “color” set to “Light Blue” and “color_for_filtering” set to “Blue”.

      This way, “Dark blue” and “Light Blue” products will be displayed when the products are filtered by “color_for_filtering” set to blue.

      To hide “Color” from the layered naigation, you should set “Use In Layered Navigation” to “no” for the attribute “color”.

      If you have a lot of products, you can use this software: Product Manager for Magento

      It will display the color and color_for_filtering in a grid and you can bulk update values by copy and paste. It will take a few minutes to update thousands of products.

  4. Hello,

    I have added manufacturer as an attribute. Also i would like to know whether it is possible to upload an image to the each manufacturer and display it in page manufacturers

    Looking for your reply!!!!!!!!!!!!!!

  5. The analytical part of my mind was very much agree with your proposal: with these distinctions “shoe_size” and “shirt_size” we get a more analitic model, and also the person who creates a product has only the options appropriate for the type of product : very good.
    However (motivated by a hard migration OSC), I’ve been thinking a bit more, aided by the synthesizer part of my mind, and I wonder:

    In addition to the possible confusion for the product creator (ie: assuming for granted that he will choose the appropriate options in each case), what problems might arise from set an attribute “size” common to all products that need?.
    For example, there magento demo of the attribute “color”, common to the entire catalog. In category navigation there isn’t inconsistencies: if we looking at the category “shoes”, layered navigation panel only shows the options of the shoes.
    On this demo there are “shoe_size” and “shirt_size”

    Finally: Does anyone could point out a case that definitely (apart from the above case the creation of a product) prove that is functionally convenient (because advantages or disadvantages) to perform these differences on the design of the attributes?

    – An advantage of non-distinguished “color”: we can search green products in full catalg 🙂

    thank you very much!

  6. i created Attributes and Attribute sets . but product attribute not displaying on product page .
    someone has an idea ?

  7. I need help with Managing Attribute and Managing Attribute Set—

    My doubt is that if i have 2 or more products where there is a common attribute, then magento doesnt allow the common attribute to be used.
    Eg: now Shirt and Pant have different tables but the color column can be same like ‘Black, White’
    also i am trying to this with configurable product

    The error is ‘Value must be unique’
    Advice needed ASAP

  8. Hey Igor,

    I am not sure what exactly are you wishing to do? Can you be more specific? If you refer to attribute creation, adding those and their values should be an easy task to do even manually. I don’t think that you need import script for this. Or you mean something else?

  9. Thanks for your article.

    But how add the Shirt Size (XX,XXl, ect) using installer from app/code/local folder(module) ?

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <blockquote cite=""> <code> <del datetime=""> <em> <s> <strike> <strong>. You may use following syntax for source code: <pre><code>$current = "Inchoo";</code></pre>.