Afdrukken

Veel administrators zoeken naar een manier om de moduletitels automatisch te vertalen om te voorkomen dat de module manager vol staat met duplicaten per taal.

Het gebruikelijke advies is om duplicaten van de module per taal te maken. Dat kan anders. Het vereist wat eenvoudige programmeer kennis.

Je moet kunnen werken met "language overrides" in Joomla. Enige kennis hoe "template overrides" werken is ook handig.

Als je template een bestand "templates/yourtemplate/html/modules.php" heeft, zit je goed. Anders kopieer je "modules.php" van "templates/system/html" naar "templates/yourtemplate/html".

Open "modules.php" in "templates/yourtemplate/html" met je favoriete editor of met de administrators template files editor.

Verander alle

$module->title

met

JText::_($module->title)

Let op! als je "system/html/modules.php" hebt gekopieerd moet je ook alle

function modChrome_xxxx

aan andere naam geven om errors te voorkomen.

Zelf heb ik ze omgenaamd naar

function modChrome_xxxx_alt

Ik heb "_alt" als suffix gebruikt. Ik gebruikt alt_ als prefix later.

Sla de veranderde "modules.php" op. Maak ook deze verandering in je template's index.php file. Zoek alle styles en maak de wijziging:

<jdoc:include type="modules" name="left" style="html5_alt" />

In administrator ga naar "extensions -> modules".

Creƫer of wijzig je module.

In "title" type de gewenste titel in hoofdletters en laat het voorafgaan met "ALT_", verander de spaties in underscores. Voorbeeld: "ALT_MY_TITLE_OF_CHOICE".

De ALT_ prefix is er er zeker van te zijn dat de language override functie niet zomaar een zin of woord overschrijft. En het maakt het ook overzichtelijk in de module manager

Sla de module op.

In administator ga naar "extensions -> languages -> Overrides".

In het filter selecteer de taal en omgeving "site", voorbeeld; "English (en-GB) - site".

Klik New om een nieuwe override te maken.

In "Language Constant" type je "ALT_MY_TITLE_OF_CHOICE" op dezelde manier als in de module titel.

In 'Text" type je de gewenste vertaling; "My title of choice".

Klik Save and new (voor elke volgende taal)

In het filter selecteer de volgende taal en omgeving, voorbeeld; "Nederlands (nl-NL) - Site".

In "Language Constant" type je "ALT_MY_TITLE_OF_CHOICE" op dezelde manier als in de module titel.

In 'Text" type je de gewenste vertaling; "Door mij gekozen titel".

Save and new (voor elke volgende taal)... enzovoorts voor elke taal.

Nu zal de module de gewenste titel tonen in de gekozen talen.