Description
AeroIDX turns your real estate (IDX) listings into real WordPress pages that load fast and are built to rank. Every property gets a clean, readable URL, and its SEO markup is written on the server, so search engines can crawl and index a listing as soon as it goes up.
Most IDX widgets draw their listings with JavaScript in the browser, which leaves the page’s HTML nearly empty for search engines. AeroIDX does the opposite. It writes the title, meta description, Open Graph and Twitter Card tags, the canonical link, and the structured data straight into the server response.
Key features
- Clean listing URLs. Every property is served at
/details/{address-slug}/{listing-id}. - Server-side SEO tags. The
<title>, meta description, Open Graph, and Twitter Card tags render on the server for every listing. - Schema.org structured data. Each listing outputs
RealEstateListingJSON-LD, so it can qualify for rich results in Google. - Works with your SEO plugin. When Yoast SEO or Rank Math is active, AeroIDX hands them the listing data. With no SEO plugin, it outputs the tags itself.
- XML sitemap. A dedicated sitemap lists every property so search engines can find them all.
- Canonical URLs and legacy redirects. Old
/details?id=...links 301-redirect to the canonical URL, so you keep the SEO equity. - Classic and block themes. Works with both classic themes and block (FSE) themes.
- Clean handling of removed listings. A delisted property returns a proper HTTP 410 (Gone) page instead of a broken link.
Admin-screen icons are from the Lucide icon set, licensed under ISC (GPL-compatible).
External Services
AeroIDX is the WordPress front end for the AeroIDX platform and requires an active AeroIDX account and API key to function. Sign up at https://aeroidx.com/plans.
The plugin communicates with the AeroIDX service (default https://app.aeroidx.com, configurable) in the following ways:
- Listing pages (server-side): when a listing page is requested, WordPress calls the AeroIDX API to fetch that listing’s data. Only the requested listing identifier is sent.
- XML sitemap (server-side, background): a scheduled WP-Cron job periodically fetches the full listings index from the AeroIDX API to (re)generate the sitemap.
- API key validation & account info (server-side): when you save your API key or open the AeroIDX admin screens, the plugin calls the API to validate the key and read your plan.
- Page / site sync (server-side): creating an IDX page or connecting your site sends your site’s home URL to AeroIDX so it can configure deep links back to your site.
- Widget library (server-side): the Widgets screen lists the widgets saved on your AeroIDX account, and its duplicate and delete actions ask the API to duplicate or delete the widget you picked. Only that widget’s identifier is sent, and only you, as a signed-in administrator, can trigger it.
- Widget script (browser-side): the interactive listing widget loads its script (default https://app.aeroidx.com/components.js) from the AeroIDX asset host and requests listing data from the AeroIDX API.
- Widget builder (admin browser): when you build or edit a widget from the plugin’s Widgets screen, the plugin mints a single-use sign-on token server-side and opens the AeroIDX builder in a new browser tab on the AeroIDX host, where you configure and save the widget. Only you, as a signed-in administrator, trigger this, and it sends no data about your site’s visitors.
Every server-side request includes your site URL (via WordPress’ home_url()) in the HTTP User-Agent header so AeroIDX can associate the request with your account. These server-side requests send only the requested listing identifier (or the listings index for the sitemap), never your visitors’ personal data.
The browser-side widget is different: like any embedded third-party script (for example an embedded map or video), it loads directly from the AeroIDX asset host, so when it loads a visitor’s browser exposes its IP address and User-Agent to AeroIDX. If you display the widget, disclose this in your own site’s privacy policy as you would for any third-party embed.
By using this plugin you agree to the AeroIDX Terms of Service and Privacy Policy:
- Terms of Service: https://app.aeroidx.com/legal/agreements
- Privacy Policy: https://app.aeroidx.com/legal/privacy
Privacy Policy
AeroIDX does not collect or store any personal data about your site’s visitors on your WordPress site, and it sets no cookies.
Server-side requests this plugin makes to the AeroIDX service (https://app.aeroidx.com by default) carry only your site URL (in the User-Agent header) and the identifier of the listing being rendered, never visitor data.
If you display the AeroIDX widget, its script is loaded in the visitor’s browser directly from the AeroIDX asset host. As with any embedded third-party script (such as an embedded map or video), the visitor’s browser thereby exposes its IP address and User-Agent to AeroIDX when the widget loads. This happens only on pages where you place the widget. If you use the widget, you should disclose this in your own site’s privacy policy.
Data handling by the AeroIDX service is governed by the AeroIDX Privacy Policy: https://app.aeroidx.com/legal/privacy
Bundled Assets
The admin screens use the Poppins typeface, which ships inside the plugin and is served from your own site. No font is ever requested from an external host, so no visitor or administrator IP is exposed to a font CDN.
- Poppins — Copyright 2014-2019 Indian Type Foundry. Licensed under the SIL Open Font License 1.1, a GPL-compatible licence. Full text:
assets/fonts/Poppins-OFL.txt. Source: https://github.com/itfoundry/Poppins
Captures d’écrans



Blocs
Cette extension fournit 1 bloc.
- AeroIDX Page Renders an AeroIDX IDX page screen (Search, Sign In, My Account, etc.)
Installation
- Upload the plugin folder to
/wp-content/plugins/, or install the plugin ZIP via Plugins Add New Upload Plugin. - Activate the plugin through the Plugins screen in WordPress.
- Make sure pretty permalinks are enabled (Settings Permalinks, any option other than « Plain »). AeroIDX needs them to serve clean listing URLs.
- Open the AeroIDX menu in the WordPress admin sidebar.
- Enter the API Key from your AeroIDX account and save.
Your listings will then be available at /details/{address-slug}/{listing-id}.
FAQ
-
Do I need an AeroIDX account?
-
Yes. AeroIDX is the WordPress front end for the AeroIDX platform. You need an active account and an API key. Get one at https://app.aeroidx.com/api-keys.
-
Does it work with Yoast SEO or Rank Math?
-
Yes. AeroIDX detects Yoast SEO and Rank Math and feeds them the listing data so they generate the meta tags. If no SEO plugin is active, AeroIDX outputs the SEO tags itself.
-
Do I have to use pretty permalinks?
-
Yes. AeroIDX serves listings at clean URLs, which requires the WordPress permalink setting to be anything other than « Plain ».
-
Does it work with block (FSE) themes?
-
Yes. AeroIDX supports both classic themes and block themes. The listing widget is injected into the theme’s content area in either case.
-
Where do listing pages appear?
-
Every listing is rendered at
/details/{address-slug}/{listing-id}on your site. AeroIDX also generates an XML sitemap so search engines can find them all. -
What happens to a listing that is sold or removed?
-
AeroIDX returns a proper HTTP 410 (Gone) page for delisted properties, so you don’t accumulate broken links or soft 404s.
-
How do I style listing pages to match my theme?
-
AeroIDX listing pages aren’t editable in the WordPress editor. They’re rendered on demand from your IDX data. To style them, use the scoped CSS hooks the plugin exposes from your theme custom CSS, a page builder custom CSS field (Bricks, Elementor, etc.), or a child theme stylesheet. Your rules only affect AeroIDX pages:
body.aeroidx-page: body class added on every AeroIDX-rendered page.#aeroidx-listing-detail,.aeroidx-listing-detail: main wrapper of the listing detail page..aeroidx-widget-mount: direct parent of the listing-details widget element.
The same documentation, with a copy-paste example for fixing header overlap on themes with fixed or transparent headers, lives inside the plugin under AeroIDX > Theme Integration in the WordPress admin.
Avis
Il n’y a aucun avis pour cette extension.
Contributeurs/contributrices & développeurs/développeuses
« AeroIDX – Real Estate IDX Search, MLS Listings & Lead Capture » est un logiciel libre. Les personnes suivantes ont contribué à cette extension.
ContributeursTraduisez « AeroIDX – Real Estate IDX Search, MLS Listings & Lead Capture » dans votre langue.
Le développement vous intéresse ?
Parcourir le code, consulter le SVN dépôt, ou s’inscrire au journal de développement par RSS.
Journal des modifications
0.4.1
- Fixed: a widget pasted straight into a page, rather than added with the AeroIDX shortcode or block, only worked if the AeroIDX script was also in your site header. Widgets now work on their own, wherever you put them.
- Fixed: listing and search screens pushed the rest of the page down as they finished loading. Space is now held for them from the start, so nothing moves.
- Changed: if you added the AeroIDX script to your site header, you can remove it. The plugin loads what your widgets need by itself, and keeping both no longer loads it twice.
- Performance: that code now starts loading at the top of the page instead of the bottom, so widgets appear sooner.
0.4.0
- New: a Widgets screen in wp-admin. Pick a widget type, build it in the full AeroIDX builder (it opens in a new tab), and get a shortcode ready to paste on any page.
- New: a widget library to manage what you’ve built. Edit, duplicate, or delete a widget, and copy its shortcode with one click.
- New: testimonials widget, a carousel of client testimonials.
0.3.0
- Fixed: creating an IDX page before saving your API Key published a page that visitors saw empty. The plugin now asks for the key first, on every route that could get there.
- New: deleting an IDX page asks you to confirm first. The page goes to the Trash, but AeroIDX stops treating it as that IDX page, and the confirmation says so.
- Design: the admin screens were rebuilt to match AeroIDX — same layout, refreshed colour, type and spacing.
- Privacy: the admin now uses a typeface that ships inside the plugin instead of loading one from an outside service, so no administrator IP reaches a font host.
- Maintenance: filtering the widget list with no matches now offers a way back to the full list.
0.2.3
- Fixed: on sites running Yoast SEO or Rank Math, the sitemap index answered with a « page not found » error. Those plugins claim every URL that ends in -sitemap.xml, so the index moved to /aeroidx-sitemap-index.xml. The old address still works wherever it worked before.
- Fixed: robots.txt no longer points search engines at the sitemap until it actually holds listings.
0.2.2
- Clearer, more benefit-focused plugin description and readme copy for real estate agents. No functional changes.
0.2.1
- Internationalization: the text domain now matches the plugin slug, so translations load correctly.
- Performance: sitemap data is no longer autoloaded on every page request.
- Security: hardened URL escaping in Open Graph and Twitter Card meta tags.
- Maintenance: clearer plugin description and installation instructions.
0.2.0
- New: SEO-friendly agent pages at /agent/{name}/{id}: clean URLs with canonical, Open Graph, Twitter Cards, and Person schema.
- New: configurable agent URL base, with 301 redirects from previously used bases so old links keep working.
- New: agent pages integrate with Yoast SEO and Rank Math, feeding agent data through their tags so output stays single-source (no duplicate meta).
- Improved: agent pages now reach full SEO parity with listing detail pages.
0.1.0
- Initial release.
