Many WPResidence shortcodes and Elementor widgets point to a property, an agent or a category by its ID. On a translated page those IDs still belong to the original language. WPEstate Translate swaps them for the IDs of the translations, so a Spanish page shows the Spanish property instead of the English one.
Why IDs Need to Change
Say the English home page shows three properties with [estate_property_list property_ids=”128,144,157″]. Their Spanish translations are separate posts with other IDs. Without the swap, the Spanish home page would list the three English properties.
Shortcodes: Swapped When the Page Loads
Each time a page is shown, WPEstate Translate reads the shortcode and replaces the IDs with those of the current language. Your page content does not change.
| What | Covered |
|---|---|
| Shortcodes | Names that start with wpestate_, wpresidence_ or estate_, plus property_page and property_page_advanced |
| Single ID attributes | id, post_id, property_id, agent_id, developer_id |
| ID list attributes | ids, post_ids, property_ids, agent_ids, developer_ids |
| Elementor Shortcode widget | Yes, a WPResidence shortcode placed in it is swapped the same way |
Elementor Widgets: Swapped When the Page Is Translated
WPResidence Elementor widgets such as Featured Property, Agent Grids or Search Form Builder save the IDs in the widget settings.
- Auto translate: when WPEstate Translate translates an Elementor page automatically, it also replaces the property, agent and term IDs in the widgets with those of the target language.
- Manual translation: the new page keeps the IDs of the original. Open each widget on the translated page and choose the translated property, agent or term.

The Search Form Builder tabs also keep a separate cache for each language, so each language shows its own tab names. See Translating Elementor Pages and Widgets and Automatic Translation.
When an Item Has No Translation
If a property or agent has no published translation in the current language, the original ID stays. The shortcode or widget then shows the original item instead of an empty space. When you publish the translation, the page shows it from the next load.
Turn It On or Off
- Go to WPEstate Translate > Settings.
- Find Elementor & Shortcodes.
- Tick or clear Enable compatibility layer for Elementor widgets and WPResidence shortcodes. It is on by default.
- Click Save Settings.
A Card Still Shows the Original Language
| What you see | What to do |
|---|---|
| A property or agent card in the original language | Translate and publish that property or agent. See Translating Posts and Pages. |
| An Elementor widget on a manually translated page shows the original items | Edit the widget on the translated page and pick the translated items. |
| A search form shows the original category or city names | Translate the terms. See Taxonomy Translation. |
| Old names stay after translating | Click Clear WpResidence Cache in the admin bar. |
For developers: Elementor Widget Translation (Developer).
