WP Residence Help WP Residence Help

  • WPRESIDENCE
  • Video Tutorials
  • Client Support
  • API
Home / WPResidence Translate Plugin / The String Scanner

The String Scanner

70 views 0

The WPResidence Translate string scanner is the engine that discovers every translatable label on your site and registers it in the plugin’s database. Without a scan, the translation grid under Theme & Plugins Strings is empty. This article explains what gets scanned, what gets skipped, and how to re-run the scanner after changes. For the bigger picture, see our guide on building a multi-language real estate website.

Where to Trigger a Scan

Go to WPEstate Translate → Theme & Plugins Strings and click Scan for translations. A confirmation banner reports how many new strings were registered (for example: “Scan completed. 427 new strings were registered.”).

What The Scanner Looks At

For each run, the scanner inspects three sources:

  • Active (child) theme — reads all .mo and .po files in the theme’s languages/folder.
  • Parent theme — if a child theme is active, the parent is scanned too, so you inherit its translations.
  • Active plugins — any plugin that ships a language/directory. On a multisite, network-activated plugins are included automatically.

For every file the scanner pulls the source strings, any translations already shipped inside the file, and stores them in the plugin’s database. Non-Latin alphabets (Cyrillic, Arabic, Chinese, Japanese, etc.) are preserved byte-for-byte.

What The Scanner Skips

  • Themes and plugins without a languages/ folder — the scanner has nothing to read.
  • Single-file plugins (like hello.php) — these are intentionally skipped.
  • Inactive plugins — only active/network-active plugins are examined.
  • Files that are not .mo or .po.

If a plugin or theme has no translation files at all, its strings never appear in the grid. In that case, install its language pack (WordPress.org → Dashboard → Updates → Translations) or place a starter .po file in the relevant languages/ folder and rescan.

When To Re-Scan

The scanner is incremental. It records the most recent modification time of each target’s languages/ folder and skips untouched targets on subsequent runs. Re-run a scan whenever you:

  • Activate or deactivate a plugin.
  • Switch themes or activate a child theme.
  • Update WordPress, the theme, or a plugin (because updates often add new strings).
  • Add or remove a language under WPEstate Translate → Languages.
  • Drop fresh .po files into a languages/ folder manually.

Scans are safe to run as often as you like. They do not delete existing translations — they only add new strings and refresh metadata for known ones.

Forcing a Full Rescan

If you want to rebuild from nothing — for example after deleting obsolete strings — use Clear stored translations at the top of the page, then click Scan for translations again. This wipes the strings database and recreates it from what is currently on disk. Be aware: any translations you typed in by hand will be lost, so export or generate MO files first.

Child Theme Notes

The scan screen shows a status banner for translation-file discovery:

  • Green — a child theme is active and has its own translations folder with .mp/.po files. Both child and parent translations are picked up.
  • Red — a child theme is active but its languages folder is empty. Copy the files from the parent theme to keep your translations safe across updates.
  • Amber — no child theme is active. Translation files come only from the parent theme and may be overwritten by theme updates.

Large Sites & Performance

On sites with many active plugins, an initial scan may take several seconds. Subsequent scans are much faster thanks to the per-target modification-time check. If your server times out, deactivate a few plugins temporarily, run the scan, then reactivate them.

Related Articles

  • Translating Theme & Plugin Strings — the editor workflow after scanning.
  • Gettext Pipeline & MO Files — how translations reach the front end.

For the product overview, see the multi-language real estate website page.

WPResidence Translate Plugin

Related Articles

  • String Scanner — Developer Guide
  • Gettext Pipeline & MO Files — Developer Guide
  • Gettext & MO Files — Making Translations Appear on the Front End
  • Automatic Translation — Developer Guide

Help Categories

  • 18Agent, Agency & Developers
  • 5Blog Posts & Blog Lists
  • 38Elementor Shortcodes Built-In
  • 45FAQ
  • 15Footer
  • 5Getting Started
  • 37Header
  • 2IDX & MLSImport
  • 6Installation & Setup
  • 23Installation FAQ
  • 23Maps & Location Settings
  • 21Multi-Language Third Party Plugins
  • 6Other Third party Plugins
  • 19Pages
  • 4Payments & Monetization
  • 20Property Lists, Categories & Archive
  • 36Property Pages & Layouts
  • 31Search & Filtering
  • 162Technical how to | Custom Code Required
  • 8Technical: Actions and filters
  • 6Technical: Child Theme
  • 86Theme Options & Global Settings
  • 6Translations & Languages
  • 16WPBakery Shortcodes
  • 51WPResidence / WPEstate CRM
  • 50WPResidence 5.0 Documentation
  • 8WPResidence Elementor Studio
  • 50WPResidence Translate Plugin

Join Us On

Powered by WP Estate - All Rights Reserved
  • WPRESIDENCE
  • Video Tutorials
  • Client Support
  • API