I implemented your tip, but what I actually have, is thousands of products that most of them have a basic item and 2 or more versions of that basic item, that each has its own name, size, price, and model number.
All the versions along with the basic product share the same general description and maybe the same photo, but actually the multiple versions of these basic products are unique items with each one having the above characteristics.
Now, my client wants to display the basic product and below it, its multiple versions, on rows, each version with the model no, the name and price. Of course, each one of them must also have it's own weight as well, stored in the database for the correct shipping charge calculation.
Also, there are hundreds of products that are "individual", i.e. they dont have versions, but again they have all the above characteristics. These products are under the same parent subcategory with the products that have multiple versions.
The site visitor must be able to do a search by sku code either that code belongs to a basic product or to a product version,.
Also, there is another attribute - "drawing style", for which I also want to add a search feature to the site.
Now, if I use the attribute approach for the model numbers, I cannot store model numbers for each attribute with the current stock code. except including them in the attribute value (e.g. "<version name> - <version size> - <version model no>"), but that is not a "clean" solution, because the model number of the "individual" products and the model no of the versions will be stored in different fields/tables and will be probably different datatypes, a clumsy half-solution which might create more problems later, when the database has many products. There will still be a need for search in both fields if I did that.
Instead, I would like to have one unique field for the model no. of any item, either it is a basic product or a version.
From another thread of mine (http://www.zen-cart.com/forum/showthread.php?t=117926), someone suggested to me a subcategory organization approach, something I had in mind also (this approach arises from the fact that one cannot mix both categories and products under the same parent category):
What you might do is to make subcategories for all of the products, with some of them having only the one product.
Set admin > Configuration > Layout Settings > Skip 1-prod Categories to true, and clicking those products' subcat links will take you directly to the product.
It's functionally almost the same as having products and subcats in one category, though it is more labor-intensive in the backend. If there are not hundreds of products that will need this treatment, it sounds viable to me.
There are hundreds of products that will need this treatment, but I think this approach is more correct, database-wise, since the multiple versions of a basic product are not actually items with additions, but they are unique products themselves with unique, model no, price, names, sizes. In that case, (the subcategory approach) all the model numbers, would be stored in the default "Product Model" characteristic (provided by the stock code), and there would be need for only one attribute, the drawing-style.
Also, there would be need for adding code for search by model no. and by drawing style, but the data would be stored in a more clean way. The disadvantage of this method though, would be the "individual" products (without versions) that would have to be converted to subcategories with only one product contained within them. And these products might also be many hundreds, so it would be weird to have many products as subcategories and inside them the same product stored.
Taking into consideration all of the above, is there any module that would cover all these issues (or the next zen cart version), and if not, what would be the best approach ? (attributes or sub-categories, or what ?)
I have some php, mysql, html experience and I can find my way through code, so I would appreciate any code tips that would help me to the above issues.
(I haven't stored any products, yet, I am just setting up the site, so I want to follow a correct approach from the start).
I really appreciate some help.