The AgentPress Listings plugin uses custom post types, custom taxonomies, and widgets to create a listings management system. You can use the taxonomy creation tool to create your own way of classifying listings, and use those taxonomies to allow users to search for listings.