Yes, listings can be stored as native WordPress custom post types with custom fields for builders, queries, and your own templates. MLSimport pulls MLS(Multiple Listing Service) properties into your WordPress database as real property posts under your theme’s property post type, then attaches each selected MLS field as post meta so builders and custom code can use them. Because everything lives in your database, you keep control over layout, search behavior, and SEO on your main domain.
Does MLSImport actually store MLS listings as native WordPress custom post types?
Listings are stored directly in your WordPress database as real property posts, not in remote iframes.
The plugin imports each MLS property as a normal WordPress post under your theme’s own property custom post type, such as “estate_property” in WP Residence or “property” in Houzez. MLSimport doesn’t stream listings from a remote page or lock them in a widget, so each property is a first-class post with its own ID, slug, and content stored in your site.
All imported data lives inside your own MySQL database on your hosting, instead of an iframe, subdomain, or SaaS index you can’t change. This setup lets you manage many properties like any other post type, and normal WordPress tools can read, search, and filter them. Because the listings are local, you can back them up, migrate them, and work with them using your usual admin and dev workflows.
Sync runs on a schedule, often about once every hour as a rule of thumb, to create new posts, update price or status, and expire sold listings without breaking your URLs. At first this sounds minor. It isn’t. MLSimport keeps the same post IDs and permalinks when data changes, so you don’t lose traffic or internal links when the MLS feed updates. Even when the MLS status flips from Active to Sold, the plugin updates the post instead of deleting and recreating it.
Property photos are pulled from the MLS CDN but rendered in your pages as normal <img> tags inside your HTML, which keeps them indexable by search engines. The plugin avoids heavy media duplication on your server while still giving crawlers access to listing content, alt text, and markup. That balance helps you keep disk usage under control even when you show many image-heavy listings.
How does MLSImport handle MLS field mapping into WordPress custom fields?
You can map MLS fields into WordPress custom fields and choose which ones stay visible or private.
Inside the WordPress dashboard, MLSimport shows a list of available MLS fields for your board, often more than 100 per feed. Each field has a simple toggle so you can decide whether that data should be imported. This lets you keep only what you need, instead of dragging every obscure MLS column into your site and filling your database.
For every field you enable, the plugin creates or updates a post meta key on the property post, turning MLS data into standard WordPress custom fields. These meta keys can be used by your theme, your page builder, or your own PHP code in templates and custom queries. MLSimport also lets you override field labels, so a raw name like “AssociationFee” can show as “HOA Dues” on the front end while the meta key stays clean for developers.
You can mark any imported field as private so it appears only in the admin, not on the public listing page. That setting is handy for sensitive values like “Agent Remarks” or internal notes that must stay off the live site but still be visible for staff. Fields you don’t care about at all can be left disabled, so they never hit your post meta and don’t slow editing screens or searches.
| Capability | What you control | Example use |
|---|---|---|
| Field selection | Choose which MLS fields are imported | Import “Waterfront Y/N” skip “Cumulative DOM” |
| Label overrides | Rename field labels in the UI | Show “HOA Dues” instead of “AssociationFee” |
| Visibility | Set fields as public or private | Keep “Agent Remarks” visible only in backend |
| Meta structure | Map MLS data to post meta keys | Use meta in custom queries or templates |
This table sums up how field mapping in MLSimport gives you control over which values enter WordPress, what users see, and how developers can query them. The real gain is that you can match MLS data to how your theme and tools already work, instead of fighting a fixed schema.
Can I use imported listings with Elementor, page builders, and my own templates?
Imported properties act like normal posts, so modern page builders can query and template them dynamically.
Because properties come in as a real custom post type with post meta, they show up in query widgets inside Elementor, WPBakery, Gutenberg block collections, and similar tools. Once MLSimport finishes the import, a builder’s “Posts” or “Query Loop” widget can target the property post type and pull listings with no extra connector. You aren’t stuck inside fixed shortcodes or layouts you can’t change.
Popular real estate themes such as WP Residence, Houzez, and RealHomes detect the property post type and let you design listing layouts in their visual template builders. These themes can read the meta keys that the plugin sets, so fields like price, beds, baths, and custom flags can be dropped into widgets as dynamic tags. MLSimport makes sure data lands where those themes expect it, so you can focus on layout instead of writing glue code.
You can build different templates for different use cases and assign them to the same underlying property post type. For example, one layout might highlight large image galleries and feature lists for luxury homes, while another layout could focus on price and square footage for rentals. Builders can pull any imported meta key into cards, grids, or single-property pages, so you can surface values like “Year Built,” “Pool Y/N,” or “Waterfront” exactly where you want.
Because the listings are real posts, you can also drop them into custom page templates that you write by hand. A normal WP_Query against the property post type can loop through results and display any meta that MLSimport filled in, with no extra API calls. That means one code path can serve archive pages, builder-driven pages, and custom templates at the same time.
How do MLSImport listings behave in custom queries, taxonomies, and advanced searches?
All imported fields are available to WordPress queries, which lets you build tight listing archives and searches.
Core location and type data from the MLS, like city, state, and property type, are mapped into the theme’s taxonomies so that normal archive URLs work. For example, a term like “Miami” under the City taxonomy can get its own archive page that only shows Miami listings. MLSimport feeds those taxonomy values directly from the MLS fields, so you don’t have to hand-tag each property for basic location and type browsing.
Numeric and boolean meta values such as price, HOA fee, “Pool Y/N,” or “Waterfront Y/N” can be used in WP_Query meta_query arguments. This lets you write code like “price less than 1000000 and waterfront meta equals yes” and get only matching listings. You can also assign extra taxonomies such as “Neighborhood,” “Luxury,” or “Investment” by hand or by script, and those terms will not be touched by sync.
- Run neighborhood pages that only show listings tagged to a custom Neighborhood taxonomy.
- Build a waterfront under $1M archive using meta_query filters on price and waterfront flags.
- Create a new this week section based on imported listing date fields.
What happens if I add my own custom fields or ACF data on imported properties?
You can add your own custom fields on top of imported data, and MLS sync won’t overwrite them.
The sync process only manages the fields that come from the MLS feed, so any extra meta keys that you create stay under your control. If you add fields through your theme settings or create field groups in Advanced Custom Fields, that data is separate from the keys MLSimport updates. The plugin focuses on MLS-sourced values such as price, status, and address, leaving your own fields alone.
Themes like WP Residence can detect ACF fields attached to the property post type and expose them in front-end templates and search filters. That means you can mix MLS data with your own details, such as “Cap Rate,” “Investment Notes,” or a custom “Virtual Tour URL,” on the same listing page. The extra fields behave like any other WordPress meta, and they aren’t removed when the next MLS sync runs.
Here’s the messy part. You might worry those custom flags or taxonomies will vanish during sync, and that fear sticks. You can also use custom taxonomies and meta to flag segments of your inventory, like “Historic,” “Pre-Construction,” or “Pocket Listing,” and tie custom layouts or badges to those flags. MLSimport will keep updating MLS-linked fields such as status or description, while your tags and custom metrics stay in place, even if you still feel nervous about it.
FAQ
Does MLSImport use standardized MLS data so fields stay consistent across boards?
Yes, MLSimport uses the RESO Web API and Data Dictionary so field names and formats are consistent.
Because the plugin speaks RESO, common fields such as price, beds, baths, and address arrive in a predictable structure. That makes field mapping cleaner when you work with more than one MLS or change themes later. I should add one more thing. Standardized data also helps when you rely on custom code, because your queries don’t have to handle a different schema for every board.
Can MLSImport import latitude and longitude for map search features?
Yes, latitude and longitude can be imported when the MLS provides coordinates in the feed.
When those coordinate fields are available, the plugin stores them as custom fields on the property post, ready for map-based searches in themes that support it. With coordinates in place, you can build radius filters like within 5 miles or drive dynamic map pins on archive pages. If a theme expects specific meta keys for maps, you can align the mapping so everything works together.
What happens to my site if the MLS API goes down for a while?
Your site keeps serving the last-synced listings from your own database even if the MLS feed has a hiccup.
Because MLSimport stores data locally, visitors still see full property pages when the upstream API is slow or offline. Sync jobs will fail gracefully until the feed is back, then resume updates without breaking URLs or losing posts. This approach keeps your listing section stable while the MLS side fixes any temporary issues.
Do MLSImport listings keep their SEO value on my main domain?
Yes, listing URLs, titles, and content live on your primary domain and stay fully crawlable for SEO.
The plugin creates real WordPress posts for each property, so search engines can index many unique URLs under your site. Since the HTML, text, and images all render in your pages, SEO plugins can add meta tags, schema, and sitemaps as usual. Over time, this index of listings can support long-tail searches like specific addresses or neighborhoods directly on your domain.
Related articles
- Does MLSimport store the MLS listings as WordPress posts in my database (true data import) or just display them via an iframe/remote script?
- How does MLSImport handle custom fields from the MLS (like waterfront, school district, HOA info) and can I expose those in custom searches or templates?
- Does the plugin support SEO-friendly URLs, unique listing pages, and indexable MLS content so that Google can crawl and rank the listings on my own domain?
Table of Contents


