Speedy Translate: language switcher, SEO and Smart Search

Visitors need a way to change language, and search engines need to know each page's other languages. Speedy Translate does both, with real links and translated addresses.

The language switcher

The Speedy Languages site module shows the site's published content languages. The dashboard's setup can publish it for you; otherwise, add it in Content → Site Modules → New → Speedy Languages, choose a position and assign it to all pages.

Each language is a real link to the page the visitor is on, in that language: /fr/voyages/paris-au-printemps from /travel/paris-in-spring. The links are in the page's HTML, work without JavaScript, and search engines can follow them.

Display mode

ModeWhat visitors see
DropdownA drop-down list that goes to the chosen language. The links are also in the page for visitors without JavaScript.
InlineAll languages side by side, as flags, codes or names.
PopoverThe current language; a click opens the list of the others.
OffcanvasA button that opens a side panel with the languages, optionally grouped by region. Its layout, width, placement, backdrop and body scrolling are set in the module.

The other settings choose how each language is written (code, title or native title, with or without its flag) and whether flags are square or round. Flags are drawn from a few hundred bytes of CSS for the site's own languages, not a stylesheet of every flag in the world.

IMPORTANT Upgrading from version 2? The switcher's HTML changed in 3.0: it has real links and no longer uses jQuery. Template overrides of its layouts made for version 2 need redoing from the new layouts.

hreflang and x-default

Every page lists its other languages for search engines, in its <head>:

<link href="https://example.com/fr/voyages/paris-au-printemps" rel="alternate" hreflang="fr-FR">
<link href="https://example.com/travel/paris-in-spring" rel="alternate" hreflang="en-GB">
<link href="https://example.com/de/reisen/paris-im-fruehling" rel="alternate" hreflang="de-DE">
<link href="https://example.com/travel/paris-in-spring" rel="alternate" hreflang="x-default">

In its own multilingual mode, Speedy Translate adds these tags itself, on every page, whether or not the switcher is on it. They follow the settings of Joomla's System - Language Filter plugin:

  • Add Alternate Meta Tags turns them on. The dashboard's setup offers to turn it on.
  • Add x-default Meta Tag and its language choose the page offered to visitors whose language the site does not have.

Each link points to the translated address of the same page, so search engines see matching pages in each language.

Translated URLs

A language's address is built from its translated aliases: the menu item's alias and the article's, category's or tag's alias. Translate the alias in its language tab to give the language its own words in the URL.

  • Works with and without IDs in URLs (Remove IDs from URLs in the Articles options).
  • Menu item paths are rebuilt from the translated aliases of the item and its parents.

Joomla's Smart Search indexes an article once, in its own text. Speedy Translate Pro adds the plugin Smart Search - Speedy Translate, so a visitor searching in French finds the French text and lands on the French page.

  1. Check that Smart Search - Speedy Translate is enabled in System → Plugins. Pro's installer enables it.
  2. Index the site again: Content → Smart Search → Index, or php cli/joomla.php finder:index.

Each article, category, tag, news feed and contact set to All languages is indexed in the default language and copied into each other content language, with its translations (the original where a field has none). The copies follow their item: they are unpublished, published and deleted with it. The index grows by one entry per item and extra language.

The administrator's language menu

The Speedy Languages administrator module sits in the administrator's header, and in its More menu on a narrow screen, and changes the administrator's own language without logging out. It changes the interface you work in, not the content being edited.

All the things you need to make your work easier. Did you like Solidres?