A classified like site requires very different fields per category or taxonomy term. For example car will need fields like milage, model etc.. while a house will have no. of bedrooms, sqr. feet etc. I am finding different ways to do this but not sure which is scalable. I will also be using faceted search api.
First Method: Create a generic entity with common fields and programmatically create custom entity per category which will be related using entity reference.
Second Method: Create single entity or content type with all fields and write logic to hide and show fields per category.
Third Method Create content type per category.