I'm a relatively experienced PHP developer looking to start building websites in Wordpress. I have previously built my own simple theme consisting of an index page that contains a bunch of posts and a template that is used for single posts with comments etc. I wouldn't say I'm very experienced with Wordpress but I wouldn't say I'm completely new to it.
Anyway my question is better explained with an example. Say I was to build a website for a garage that does repairs, MOTs (An annual vehicle inspection for a vehicle to be declared road safe in the UK), sells used cars etc. I understand that I can create page templates and use them for different types of pages and incorporate Wordpress' blogging system into the website without any trouble.
However, say I wanted to develop a used car system where the owner of the site can add cars (Each individual detail of the car: mileage, year, make, model, colour, date of MOT, transmission, engine size etc.) that he/she has for sale at the garage. My initial plan would be to add a category for cars, create a post for each car and assign them to that category.
My problem is that I want to be able to pull out each different piece of information for each car both on the actual car page and the car listings page. For example, I would like to pull out the mileage, make, model and price etc. all separately and style them exactly how I want. In a Wordpress post there are no fields for all of these individual pieces of information, so I can't get my head around how I would approach this.
Essentially what I would need is a bit in the CMS to "add a car" such that I can give fields for the owner to input each piece of information about the car separately which would allow me to simply pull out each field by itself. Is this something Wordpress can do? Perhaps I could extend the system in a way that allows me to add a car and provide a number of fields that I can use.
How would you approach this problem?