Beyond posts and pages, a real estate site is full of UI labels that come from PHP code: search filter labels, button captions, email subjects, dashboard messages, error notices, and widget titles. WPResidence Translate gives you one screen to translate every one of these strings into every language you activate, without editing PO files by hand. Combined with the other features covered on the multi-language real estate website page, string translation closes the final gap between your content and a fully localized interface.
Where to Find the Screen
In wp-admin go to WPEstate Translate → Theme & Plugins Strings. The page is called String Translation. It lists every translatable string the plugin has discovered, grouped by domain (theme, parent theme, or a specific plugin), with one column per active language.
First Thing To Do: Run a Scan
When you open the page for the first time, the grid is empty. Click Scan for translations at the top. The scanner walks through:
- The active theme and, if present, its parent theme.
- Every active plugin that ships its own languages folder.
For each of these it reads any existing .mo and .po files and imports the source strings (and any translations already shipped with the theme or plugin). When the scan finishes you see a notice like “Scan completed. 427 new strings were registered.”
Using a Child Theme With Pre-Made Translations
The page shows a green confirmation banner when it detects a child theme with its own languages folder, a yellow warning when the child theme has no translations, or an orange notice when no child theme is active. The WPResidence and WPRentals child themes ship with translation files for many languages, so activating one gives you a head start — the scanner picks up both child and parent files.
Filtering the List
The filter bar above the grid lets you narrow results quickly:
- Show — All strings, Not translated strings, or Translated strings.
- Search — full-text search across the original string.
- Domain — limit to a single theme or plugin.
Results are paginated (20 per page by default) and the count bar shows “Showing 1–20 of 427 strings”.
Translating a String
Each row shows the source string in the first column and one textarea per language after that. Type the translation directly in the textarea. The field saves as you move away from it via AJAX, so there is no Save button to click per row. The row border changes colour to indicate translated vs. untranslated status.
Non-Latin alphabets (Cyrillic, Arabic, Hebrew, Chinese, Japanese, Korean, Thai, Greek) are fully supported end-to-end.
Automatic Translation of Strings
Below the scan buttons is an automatic translation string block. Pick a domain (or leave All domains), pick a target language, and click Automatic Translate. The plugin sends untranslated strings to your configured automatic translation provider (see the Automatic Translation article) and fills the textareas for you. Review and correct as needed — you are always in charge of the final wording.
Generate Translation Files
Translations are stored in the database as you type. To make them visible on the front end, you need to compile them into .mo files. Click Generate translation files. The plugin writes one <domain>-<locale>.mo file per language into your theme’s languages/wpr/ directory.
A confirmation notice reports how many files were written and how many translations were included. From that moment on, the front end serves the translated strings through WordPress’s normal gettext pipeline — no extra configuration required.
Bulk Actions
- Delete selected translations — tick the checkboxes at the left of any rows and click the bulk button under the grid to remove just those entries.
- Clear stored translations — the red reset button at the top empties the entire string table. Use this only if you want to start over from scratch; a fresh scan is required afterwards.
Good Habits
- Scan whenever you activate a new plugin or switch themes so the grid stays current.
- Always click Generate translation files after a batch of edits — the front end reads .mo files, not the database.
- Use the Not translated strings filter to find work-in-progress gaps.
- Keep string translation in sync with language activation — when you add a new language, rescan and translate.
Related Articles
- String Scanner — what exactly gets scanned and how to expand the scope.
- Gettext Pipeline & MO Files — the developer view of how translated strings reach the front end.
- Automatic Translation — configuring OpenAI and other providers.
For the wider context of running a multilingual site with WPResidence, see our guide on building a multi-language real estate website.



