Does MLSimport store listings as native WordPress custom post types so I can fully control templates with PHP, page builders, or custom fields?

Free Trial
Import MLS Listings
on your website
Start My Trial*Select a subscription, register, and get billed after a 30-day free trial.

Other Articles

Does MLSimport store listings as real WP post types?

Yes, MLSimport stores each property as a normal WordPress post inside your theme’s own property post type, so you keep full template control. Price, status, beds, baths, and other MLS(Multiple Listing System) fields live as post fields and post meta in your database, not in a remote widget. Since they’re normal posts, you can shape layouts with theme templates, page builders, or custom fields like you do for other content.

Does MLSImport actually use real WordPress custom post types for listings?

Listings live as native posts in your database, not in iframes or remote pages.

Each property from the MLS feed is saved as a standard WordPress post in the property post type your theme uses, such as wpresidence_property or houzez_property. MLSimport works with these theme types instead of adding its own, so it matches how your site already handles properties. The plugin saves title, content, and excerpt as post fields, and other values as post meta.

Extra details like beds, baths, HOA fee, and coordinates are stored as custom fields in your MySQL tables. MLSimport links those meta keys to the theme fields your layout expects, so front-end templates can read them without extra glue code. Imports usually run on a schedule, often about every 60 minutes, so new listings and price changes appear before visitors notice gaps.

Sync jobs only touch posts that belong to the mapped MLS boards, so other post types and pages stay untouched. Status updates like Active, Pending, or Sold apply to the same posts instead of creating duplicates, which keeps property archives clean even when you handle thousands of active listings. MLS images often load from the MLS or a CDN(Content Delivery Network), but they’re printed in templates as normal <img> tags, so you still control HTML classes, lazy loading, and responsive behavior.

Aspect How listings are stored What you control
Post type Theme property custom post type Single and archive PHP templates
Fields Post fields plus post meta Meta usage in templates
Images Remote source normal img tags HTML CSS lazy load behavior
Sync Scheduled cron imports into database Frequency and board selection
Scale Tens of thousands posts supported Hosting and indexing strategy

The table shows that the plugin works inside normal WordPress structures, not around them. Since MLSimport writes to your own tables, every listing behaves like a regular post that your theme, cache plugins, and SEO tools already understand.

How much template control do I get with PHP, Elementor, or other page builders?

Template files and builders see imported listings as standard custom post type content.

Because properties live in your real estate theme’s post type, you can override layouts using the normal template hierarchy, such as single-wpresidence_property.php or archive-houzez_property.php. MLSimport doesn’t replace that system, it just fills the data those templates read. So you can add or move fields in PHP the same way you do for blog posts or other custom content.

If you use WPResidence, Houzez, or RealHomes, their visual tools and Elementor widgets see imported listings as first-class content. The plugin feeds price, address, and features into the fields the theme exposes, so Elementor single-property templates stay drag-and-drop. You can add sections like videos, maps, walkability notes, or school info without custom SQL, because the data already lives in post meta.

URL slugs follow the structure from your theme and WordPress settings, such as /city/street-address or /properties/mls-id. That structure applies to every property MLSimport creates, so you can tune permalinks for SEO with familiar tools. Since the plugin doesn’t wrap listings inside shortcode-only pages or iframes, you keep full control over HTML, CSS, JavaScript, and schema markup at the template layer.

Can I map MLS fields into custom fields, taxonomies, and ACF for deep control?

MLS fields can map into your own custom fields and taxonomies without custom code.

Inside the mapping screen, MLSimport lists fields from each MLS board, often more than 100 fields per board. You can switch each one on or off for import and choose which WordPress meta key or theme field it’ll fill. That way you only store data you care about, which keeps the database lighter and the admin area easier to handle.

You can rename field labels for front-end use, choose which fields stay private for staff, and skip fields that clutter pages. The plugin can tie MLS data into existing custom fields from your theme or from ACF groups, so imported values land in your ACF-based layouts and filters. Location data like city, state, and neighborhood can map into your theme’s taxonomies, which powers location archives and dropdown filters without more code.

  • You choose which MLS fields import and map into WordPress meta.
  • Private fields keep agent-only data out of public templates.
  • ACF groups can read imported values for complex layouts and searches.
  • Location fields can fill taxonomies for clean city and area archives.

Will MLSImport overwrite my manual edits, or can I safely add my own data?

Your own custom fields and taxonomies stay intact while MLS data keeps auto-updating.

During each sync, the plugin only updates fields it controls, like price, status, beds, and baths. Any extra post meta that you or your theme add outside the mapped list stays unchanged, so your notes or flags survive future imports. MLSimport is strict about MLS-synced fields staying accurate, so manual edits to those synced values can be replaced if they conflict with the board.

You can attach extra taxonomies or tags such as Luxury, Historic, or Waterfront Special, and they remain when listings refresh. That lets you stack your own labels on top of clean MLS data without losing them to sync jobs. The result is a stable set of synced facts plus your own custom fields for investment notes, custom copy, or highlights.

How does MLSImport compare to iframe IDX or cloud IDX for ownership and flexibility?

This setup gives real on-site ownership and control that hosted IDX tools often don’t match.

Iframe IDX and subdomain IDX keep listing content on other servers, so search engines treat that content as separate from your main site. With MLSimport, properties live as posts in your database, with URLs on your main domain, so Google can crawl and index each address page as your content. At first this sounds like a small detail. It isn’t.

Cloud IDX tools that render remote templates still control final HTML and layout even when pages are indexable. By contrast, MLSimport lets you own each part of the front end, from PHP templates to CSS, JavaScript, and schema markup. If the RESO API has a short outage, your site still serves the last synced posts instead of empty widgets, which avoids broken paths while data updates lag behind.

Because listings are native posts, you can back up, clone, or migrate the whole site, including current and sold properties, like any other WordPress install. That gives you long-term freedom to change themes, move hosts, or add tools without losing the property catalog. I should say this more bluntly. You stay in charge of content and design while the plugin handles the hard work of pulling clean data from MLS feeds.

FAQ

Do I need a special property post type before using MLSimport?

You don’t need to build a custom post type if your theme already has one.

Most real estate themes ship with a property post type that MLSimport can detect, such as those in WPResidence or Houzez. In the setup screen you pick which post type will store imported listings, and the plugin writes data there. If you’re building a custom stack, a developer can first register a property post type, then map the feed into that structure.

Can developers hook into MLSimport imports to run custom code?

Developers can hook into the import process and run custom code when listings create or update.

The plugin fires WordPress actions and filters around steps like creating posts, updating meta, or assigning taxonomies. A developer can attach custom functions to those hooks to trigger extra tasks, such as syncing to an external CRM or computing a custom score on each update. At first you might try to override everything with filters. Instead, you usually just target the few steps that matter.

How often can MLSimport sync listings, and how many can it handle?

Syncs are usually scheduled around hourly and can handle thousands of listings with proper hosting.

The exact schedule is configurable, but many setups run imports every 60 minutes to keep price and status current. With a solid server, handling several thousand active listings across multiple boards is normal when caching and indexing are tuned. The key idea is that MLSimport streams changes into posts over time instead of trying to refresh all data every few seconds.

Is MLSimport compatible with Elementor, WPBakery, and Gutenberg?

Imported properties work with major page builders because they’re normal WordPress posts in a property post type.

Elementor templates, WPBakery layouts, and Gutenberg block patterns can all target the property post type that MLSimport fills. Supported themes often include builder widgets made for property fields, and those widgets read the meta created by the plugin. That lets you customize single-property pages and archives visually without breaking the data sync coming from the MLS, even if the setup feels heavy at first.

Facebook
WhatsApp
Twitter
LinkedIn
Picture of post by Laura Perez

post by Laura Perez

I’m Laura Perez, your friendly real estate expert with years of hands-on experience and plenty of real-life stories. I’m here to make the world of real estate easy and relatable, mixing practical tips with a dash of humor.

Partnering with MLSImport.com, I’ll help you tackle the market confidently—without the confusing jargon.