Optimizing Configurable Products in Magento 1 – A Practical Approach #5134
addison74
started this conversation in
Show & Tell
Replies: 1 comment 1 reply
-
|
Nice result, thanks for sharing. It seems this is such a common use case that it should be a whole lot easier out of the box, doesn't it? :) |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
I wanted to share my recent experience with configurable products in Magento 1/OpenMage and how I managed to improve the workflow by addressing some key challenges I encountered. Over time, I’ve worked with both configurable products and simple products with options across several online stores. After analyzing the options, I chose to use simple products for a long time, relying on the MageWorx Advanced Product Options (APO) extension. While this extension was feature-rich, it unfortunately stopped being updated, and the latest version (4.17.13) is now offered for free.
Given that the extension no longer keeps pace with newer PHP versions and the unresolved issues it presented, I decided to revert to a solution based on the native functionality of Magento 1/OpenMage, with necessary modifications and thorough testing.
Instead of using a standard configurable product with attributes like size and color, I opted for creating separate configurable products for each color and associating simple products accordingly. However, a major limitation in Magento 1 is that the configurable product attribute set must be inherited by the associated products. This led me to identify an implementation problem: in the associated products grid, attribute sets with the same combination of configurable attributes aren’t displayed, which adds complexity to the process.
To address this, I modified the grid to display products with size as a configurable attribute, allowing me to associate them as intended. Another challenge was the database overhead: using a default or derived attribute set for size required a significant number of database entries. This was one of the reasons I had previously avoided configurable products.
After reviewing the attributes needed for simple products, I narrowed down the list to a more minimal set, as follows:
General Attributes
Name
SKU
Weight
Status
Visibility
Configurable Attribute
Price Attributes
Price
Special Price
Special From Date
Special To Date
Tax Class ID
To keep things minimal, I set is_user_defined = 1 for all attributes (after making a backup of the table) and removed any unused attributes. After saving the attribute set, I created and associated simple products with the configurable product without encountering any issues. I then restored the original attribute values from the backup.
Since Magento 1 is limited in displaying only the configurable product's attributes on the product page, I installed the Best4Mage Configurable Products Use Simple Details extension. This worked seamlessly out of the box. I also enabled Custom Swatches, allowing me to replicate the functionality of the MageWorx extension in a more streamlined way.
In conclusion, it is crucial to keep the simple product attribute set as minimal as possible. Otherwise, unnecessary values (such as images and specific attributes, design, and more) will be added to the database, even though they will never be used. This experience has helped me identify several areas for improvement, and I plan to report these findings in the near future.
Here is the final result
Beta Was this translation helpful? Give feedback.
All reactions