I want to build a site similar to ebay (a mini version of it, using a LAMP stack as the basic setup I guess or maybe you guys will suggest something else) and I'm wondering how they built their system. The part I don't understand the most is how they manage their categories. They have one search code and probably one code for posting items for sale as well as one code for displaying the items. But how do they create/store the template for each category? Also what is the database structure behind their setup? And finally they have so many categories and sub-categories, let's say somebody posts an item inside (which is most likely the process ebay used to add categories) Motors -> Parts & Accessories > Racing Parts
A few days later, people request more sub categories under "Racing Parts":
- Accessories
- Auto Racing Parts
- Fasteners, Fluids & Gaskets
- Kart Racing Parts
- Safety Equipment
- Other
So now they have a new level for Racing parts that go like this:
- Motors -> Parts & Accessories > Racing Parts > Accessories
- Motors -> Parts & Accessories > Racing Parts > Fasteners etc..
What happens with the existing listings that have been posted prior to adding the new subcategories? do they get moved to a sub-category? Does ebay force new items to be listed in the sub-categories and removes their old posting form for "Racing Parts"? If they do, what if the user is missing a category, the user may get confused and not post and then ebay will lose money. And if they don't remove the general Racing Parts posting form, then users will post in a category that is too generic and now it will become difficult to use the "Refine search" option because all the forms have different fields that ebay could filter by.
If you guys have any ideas, please let me know. I'm really confused on how they do it and would really like to understand :)