Houzez is a powerful and flexible real estate theme. One of the reasons it works well for a wide range of property websites is that it builds on standard WordPress data structures while adding its own layers for property-specific information.
To get the most out of Houzez, especially when working with property imports, large inventories, or custom behaviour, it’s worth understanding how property data is stored in the background and how the different pieces fit together.
This article explains how Houzez stores property listings, where different types of data live, and why that structure matters in everyday use.
Properties Are WordPress Posts (But Not Normal Ones)
At its core each property in Houzez is stored as a custom post type.
That means:
- Each property has a post ID
- It has a title, content, status, author, and publish date
- It participates in WordPress queries, URLs, and archives
This is useful because it allows property listings to integrate naturally with WordPress features such as search, caching, permissions, and templating.
However, most of the meaningful property information is not stored in the main post content.
Where the Core Property Information Lives
The majority of property-specific data is stored as post meta.
This typically includes:
- Price and currency
- Bedrooms, bathrooms, and size
- Address and location values
- Listing status and availability
- Agent or office assignment
- External reference IDs
- Flags and internal attributes used by the theme
From WordPress’s perspective, these are key–value pairs attached to the property post.
In practical terms, this means:
- A property can exist even if some details are missing
- Individual fields can be updated independently
- Different systems can write to different parts of the same listing
This structure gives Houzez a lot of flexibility, particularly when working with external data sources.
Taxonomies vs Meta: How Houzez Organises Listings
Houzez uses a combination of taxonomies and meta fields, each with a different purpose.
Taxonomies are typically used for:
- Property type (house, apartment, land)
- Property status (for sale, to let, sold, let agreed)
- Locations and area hierarchies
- Features and amenities
Taxonomies:
- Are shared across listings
- Power filters, archives, and category pages
- Are designed for classification and grouping
Meta fields are typically used for:
- Numeric or free-form values (price, size)
- Source-specific identifiers
- Internal flags and settings
- Values that don’t naturally belong to a shared category
How Images Are Stored and Referenced
Property images are stored as separate media items, not inside the property post itself.
In practice:
- Each image is its own WordPress attachment
- The property stores references to those attachments
- Image sizes are generated independently
- Media can exist even if a property is deleted
For larger sites, image handling often becomes the most resource-intensive part of managing property data.
Theme Options and Global Settings
In addition to individual listings, Houzez stores global theme options separately.
These options are stored in the WordPress wp_options table and typically include:
- Layout and design settings
- Search and filter behaviour
- Currency and measurement defaults
- Map and location settings
- Feature toggles and display preferences
These values:
- Apply site-wide rather than per property
- Are loaded early by WordPress
- Influence how property data is interpreted and displayed
Because theme options live outside individual listings, changing them can affect all properties at once without modifying any property records directly.
A Helpful Mental Model
A simple way to think about Houzez property data:
- The property post is the container
- Meta fields hold the details
- Taxonomies provide classification
- Images are independent assets
- Theme options define global behaviour
When these layers are understood Houzez becomes easier to work with and more predictable as a site evolves.