Managing Hreflang in the UI
Overview
The Precision hreflang manager helps you define language and region tags in WordPress — ensuring international users reach the correct version of your content.
Editors use a structured table with accessible labels to add or update language and country pairs. A confirmation modal prevents accidental deletion of either individual tags or full rows.
Adding a Page Slug
To begin adding hreflang tags, you must first define a page slug:
- Click Add new row.
- Enter the page slug (e.g.,
contact) — this must match the slug of a published page. - Now add hreflang tags, see the next section on how to do that.
Adding Hreflang Entries
Once a slug row exists, click Add hreflang on that row to create a language-country pair:
- Language: Choose the ISO language code (e.g., EN, DE, FR).
- Country: Choose a specific country (e.g., GB, AT) or select Catchall/Region Independent if the url covers all other regions that use this language.
- URL: Paste the canonical URL for that variant.
- Click Update to save.
What is Catchall?
Catchall (Region Independent) creates an hreflang="xx" entry without a country suffix. It is used to cover variations that don’t have a specific tag.
For example, if you have en-GB and en-US but not en-IN, the catchall en tag covers that gap.
That means for a particular slug you’ll often have two entries:
- An entry for a language-country pair such as en-US for /us/contact/ and
- An entry for just the language en that covers all other countries using that language which points to the catchall /us/contact/ url.
Editing Hreflang Entries
- You can change the URL, language, or region directly in the row.
- Partial entries (e.g., missing language or URL) are flagged but preserved — no invalid tags are generated.
- Changes take effect only after clicking the blue Update button.
Deleting Entries
There are two types of deletions, each confirmed via a modal dialog:
- Delete a hreflang tag: Click the trash icon beside a specific entry.
- Delete a slug row: Click Remove row to remove the entire group of entries.
Aliases & Slug Renames
You can create alias rows that inherit hreflang entries from a primary slug.
This avoids duplication and ensures consistency across URLs that point to the same content.
- Click Add new row.
- Enter the alias slug (e.g.,
kontakt). - Once you enter an alias the hreflang editor is removed for this row – we’ll use the entries defined on the primary instead.
- Click Update.
Renaming a Slug
If a primary slug changes (e.g., from contact to contact-us), all connected alias rows are updated automatically:
- Change the slug in the primary row (e.g., to
contact-us). - Click Update.
- The plugin updates all references, including aliases, and adjusts the associated hreflang URLs accordingly.
Using Code View (Advanced)
- Click Switch to Code view to edit JSON directly.
- This view is ideal for pasting large batches or checking raw structure.
- Partially filled rows are retained between views.
- Click Update to save changes.
Catchall vs. x-default: What’s the Difference?
| Feature | Catchall | x-default |
|---|---|---|
| hreflang value | en, de, etc. |
x-default |
| Purpose | Fallback for unspecified language-region combos. | Cover homes page intended for world-wide audience. Such a page typically has a language selector. |
| Use Case | Cover variants of a language that you don’t have a specific page for. | Direct users to a language selector or language-specific homepage. |
Conclusion
- The plugin simplifies hreflang management through a user-friendly UI.
- Partial entries are handled gracefully – no invalid tags are written.
- Slug aliases and renames keep your site consistent and accurate.
- Catchall and
x-defaultprovide comprehensive fallback options. - Don’t forget: Changes are only saved when you click the blue Update button.