Real Estate · Multilingual · MLS Integration

Costa Del Sol
Prime Properties

A multilingual real estate listing portal for the Costa del Sol property market, built on WordPress and connected live to the Resales Online MLS API v6 — serving sales listings, long-term rentals, short-term rentals, and new developments in up to 14 languages, with no local property storage.

Start a conversation → Our WordPress development service

14

Languages Supported

4

Property Categories

0

Local Property Storage

Live

Resales Online MLS Feed

The Challenge

Serving live inventory to international buyers — in their own language.

International property buyers rarely search in English. A Spanish buyer, a German investor, and a Dutch retiree all need to discover the same listing — but in their own language, with the right search filters, and with a clear path to contact an agent. The challenge was to build a site that could serve live MLS property data in 14 languages without maintaining a translated copy of thousands of listing descriptions.

The solution was to pass the visitor's language code directly to the Resales Online API — which returns native-language data — while WPML handles all UI, pages, and navigation strings independently. No translation layer, no post-processing, no content management overhead. Property descriptions arrive in the buyer's language from the source.

What Was Delivered

  • Live Resales Online API v6 integration — no local property database, all data fetched on demand
  • 14-language support: EN, ES, DE, FR, NL, DA, RU, SV, PL, NO, TR, FI, HU — language code passed directly to MLS API
  • Property search form: price range, beds/baths, property type, location, new-development flag
  • Grid/list view toggle with pagination and session-persisted search state
  • Slick carousel image galleries with LightGallery zoom, video, and fullscreen
  • Sort options: price ascending/descending, location, date newest/oldest
  • Google Maps integration replacing the MLS plugin's default Leaflet/OpenStreetMap
  • Lead capture form: name, email, phone, comments, scheduling date, person/video preference
  • All leads stored in wp_mls_plugin_lead_form and emailed to admin on submission
  • AIOSEO Pro SEO: dynamic sitemaps, schema markup, breadcrumbs, IndexNow integration
  • WP Rocket caching: 12-hour transients for API location/currency data, CSS/JS minification
  • WPML 4.6.14 for UI, pages, navigation, and theme strings
  • Facebook sharing with AIOSEO keyword to hashtag conversion via Graph API v22.0, and newsletter subscription with honeypot spam protection

Technology Stack

Every tool chosen for a reason.

A production-hardened stack tuned for multilingual SEO performance on Azure infrastructure.

CMS

WordPress WPML 4.6.14

MLS Data

Resales Online API v6

Maps

Google Maps JavaScript API (custom bridge)

SEO

AIOSEO Pro 4.8.7.1 IndexNow

Caching

WP Rocket 3.15.1 12-hour transients

Hosting

Azure Web Apps (Linux) Azure Database for MySQL

Analytics

MonsterInsights Microsoft Clarity

Social

Facebook Graph API v22.0

Key Features

Six systems working as one platform.

Live MLS Feed in 14 Languages

The site fetches property data directly from the Resales Online API v6 on every request, passing the visitor's detected language code (from browser Accept-Language header or cookie) to receive native-language listing descriptions. No translation layer, no content management — the data arrives in the buyer's language from the source. A Spanish buyer sees Spanish descriptions, a German investor sees German descriptions, a Dutch retiree sees Dutch descriptions — all served from the same MLS feed, in real time, with zero manual translation overhead.

Multilingual Property Search

Search form supports price range, bedroom/bathroom count, property type, location, and a new-development flag. Results persist across pagination via PHP session state, with sort options for price ascending/descending, location, and date newest/oldest. All search strings, labels, and filter options are rendered via WPML in the visitor's language.

Google Maps Bridge

A custom WordPress plugin dequeues the MLS plugin's default Leaflet/OpenStreetMap assets and injects the Google Maps JavaScript API. It intercepts the initLeafletMap() call via a JavaScript stub in wp_head, extracts coordinates, and re-renders the property map with a Google Maps marker.

Lead Capture & Storage

Every property detail page includes a lead form capturing name, email, phone, comments, preferred scheduling date, and in-person or video call preference. Leads are stored in wp_mls_plugin_lead_form and emailed to the admin immediately on submission.

AIOSEO Pro SEO Pipeline

AIOSEO Pro manages per-property meta titles, descriptions, schema markup, and XML sitemaps. IndexNow integration automatically pings Bing and Yandex on content publish. Google Search Console is connected for search statistics, giving each of the 14 language markets genuine organic visibility.

WP Rocket Performance Layer

WP Rocket caches rendered HTML, minifies and combines CSS/JS, lazy-loads images, and generates critical CSS. The Resales Online API location and currency endpoints are cached as WordPress transients with 12-hour expiry to reduce API calls on high-traffic pages. On a cache hit, the visitor receives static HTML with zero PHP execution, zero database queries, and zero MLS API calls — the full performance benefit of a static site while retaining live data freshness on cache miss.

System Architecture

Data flows from MLS to visitor — nothing stored in between.

Browser Request (with Accept-Language: de-DE)
    
    
WordPress (Azure Web App)
      WP Rocket: serve cached HTML if warm
      WPML: resolve UI language = 'de'
    
mls-plugin/includes/mls-plugin-fetch-properties.php
      Builds API query: API key + filter IDs
      + lang=DE (passed to Resales Online)
    
Resales Online API v6
      Returns property data in German
    
mls-plugin/public/mls-plugin-propertieslist.php
      [mls_plugin_properties_shortcode]
      Renders grid/list of property cards
    
mls-plugin/public/mls-plugin-propertiesdetail.php
      [mls_property_details_shortcode]
      Full property page + lead form
    
mls-gmaps-bridge/mls-gmaps-bridge.php
      Dequeues Leaflet, injects Google Maps
      Captures initLeafletMap() coordinates
    
Browser: property page in German with Google Maps

Lead form submit  wp_mls_plugin_lead_form (stored)
                  Email to info@ (sent immediately)

Live Feed

The MLS API is queried on every property list and detail page request. No local property table exists — search filters, sort order, and language are all passed as query parameters directly to Resales Online.

Smart Caching

Only location dropdown data and currency lists are cached via 12-hour WordPress transients. Property records, images, prices, and availability are always fetched live — the site never shows a sold or mispriced property.

Multilingual Routing

WPML routes 14 language variants via URL prefixes. Each variant has independently configured AIOSEO meta, its own XML sitemap entry, and its own IndexNow ping schedule — giving each language market genuine SEO presence.

By the Numbers

The scale of the platform at a glance.

14

Languages via Single API Parameter

4

Property Categories (Sales, LTR, STR, New Dev)

12h

API Cache Transient TTL

0

Local Property Rows Stored

Work with us

Need a multilingual property listing site or live MLS feed integration?

We build custom WordPress solutions for complex real-world problems — live API integrations, multilingual SEO, lead capture systems, and performance-optimised hosting on Azure. Let's talk about your project.

Start a conversation → Our WordPress development service