You are on page 1of 61

Multi language Joomla site without 3rd-party-extensions

by Peter Martin (pe7er) twitter: @pe7er website: www.db8.nl

JoomlaDay Bangkok 2012 February 25th 2012

Welcome!

Peter Martin (pe7er), Nijmegen, Netherlands

Sheets will be available electronically Thai examples used Google Translate

My fictional Dutch website

Subject: Dutch website about Dutch cookies: Stroopwafels

Google Analytics: many non-Dutch visitors

Goal:

Multilanguage website Three languages: Dutch + English + Thai Keep old hyperlinks to website (prevent 404 errors)

Joomla! 2.5
How to create a Multilanguage website With Joomla 2.5 in 10 steps?

Multi language in 10 steps


1. Install Language Pack: Joomla system labels: Read more... 2. Define Content Languages 3. Enable & Configure System - Language Filter plugin 4. Create Root Category for every Language 5. Create Articles 6. Create Menus (every Language own Menu) 7. Create Menu Items & Menu Item Association 8. Create Menu Modules (every Language own Menu Module) 9. Create Language Switcher Module 10.Redirect old incoming links

Multi language in 10 steps


1. Install Language Pack: Joomla system labels: Read more... 2. Define Content Languages 3. Enable & Configure System - Language Filter plugin 4. Create Root Category for every Language 5. Create Articles 6. Create Menus (every Language own Menu) 7. Create Menu Items & Menu Item Association 8. Create Menu Modules (every Language own Menu Module) 9. Create Language Switcher Module 10.Redirect old incoming links

1. Install Language pack


In

Extensions > Extension Manager > install language pack


Default = en-GB Install: nl-NL + th-TH

Alternative

installation:

Upload language folder to right locations & use Extensions > Discover > install

1. Screen: Install Language pack

1. Screen: Installed Languages

Multi language in 10 steps


1. Install Language Pack: Joomla system labels: Read more... 2. Define Content Languages 3. Enable & Configure System - Language Filter plugin 4. Create Root Category for every Language 5. Create Articles 6. Create Menus (every Language own Menu) 7. Create Menu Items & Menu Item Association 8. Create Menu Modules (every Language own Menu Module) 9. Create Language Switcher Module 10.Redirect old incoming links

2. Content Language
Create

Content Language

In Extensions > Language Manager > Content For every language create a "content language"
Title:

Thai (Th) Title Native: (Th) URL Language Code: th Image Prefix: th Language Tag: th-TH

2. Screen: Content Language

2. Screen: Content Languages

Multi language in 10 steps


1. Install Language Pack: Joomla system labels: Read more... 2. Define Content Languages 3. Enable & Configure System - Language Filter plugin 4. Create Root Category for every Language 5. Create Articles 6. Create Menus (every Language own Menu) 7. Create Menu Items & Menu Item Association 8. Create Menu Modules (every Language own Menu Module) 9. Create Language Switcher Module 10.Redirect old incoming links

3. Enable System - Language Filter plugin


In

Extensions > Plug-in Manager


"System - Language Filter"
Status:

Enabled Menu associations: Yes Remove URL Language Code: Yes (For SEO)

3. Screen:System - Language Filter plugin

Multi language in 10 steps


1. Install Language Pack: Joomla system labels: Read more... 2. Define Content Languages 3. Enable & Configure System - Language Filter plugin 4. Create Root Category for every Language 5. Create Articles 6. Create Menus (every Language own Menu) 7. Create Menu Items & Menu Item Association 8. Create Menu Modules (every Language own Menu Module) 9. Create Language Switcher Module 10.Redirect old incoming links

4. Create Language Categories


In

Content > Category Manager create a Root Category for every language
Dutch
Title: Dutch Language: Dutch (Nl) [select content language]

English
Title: English Language: English (Uk) [select content language]

Thai
Title: Thai Language: Thai (Th) [select content language]

4. Screen: Create Language Categories

4b. Create Language Categories


Create

subcategories under the language categories


Nederlands (= Dutch)
Nieuws Stroopwafels

English
News Stroopwaffles

Thai
Stroopwafels (no Thai translation?)

4. Screen: Create Language Categories

Multi language in 10 steps


1. Install Language Pack: Joomla system labels: Read more... 2. Define Content Languages 3. Enable & Configure System - Language Filter plugin 4. Create Root Category for every Language 5. Create Articles 6. Create Menus (every Language own Menu) 7. Create Menu Items & Menu Item Association 8. Create Menu Modules (every Language own Menu Module) 9. Create Language Switcher Module 10.Redirect old incoming links

5. Create Articles
In

Content > Article Manager create "Articles" and:


Select Language category Select Language [select content language]

5. Screen: Create Articles

5b. Create Articles


Usefull

tool: Batch process the selected

articles Batch copy + set language of articles


Set

Language Select Category for Move/Copy Copy Click [Process] button

5b. Screen: Create Articles

5c. Create Articles


Don't

forget: Check Category & Language Create title in Language Create a new Alias For non latin languages like Thai:
Year-Month-Day-Hours-Minutes-Seconds
Alternative:

use English Alias Or Global Configuration > Site > SEO Settings > Unicode Aliases: Yes

5c. Screen: Create Articles

Multi language in 10 steps


1. Install Language Pack: Joomla system labels: Read more... 2. Define Content Languages 3. Enable & Configure System - Language Filter plugin 4. Create Root Category for every Language 5. Create Articles 6. Create Menus (every Language own Menu) 7. Create Menu Items & Menu Item Association 8. Create Menu Modules (every Language own Menu Module) 9. Create Language Switcher Module 10.Redirect old incoming links

6. Create Menu
In

Menus > Menu Manager create a Menu for every language


Title: Dutch Menu, Menu Type: dutchmenu Title: English Menu, Menu Type: englishmenu Title: Thai Menu, Menu Type: thaimenu

Do

not change Main Menu

6. Screen: Create Menu

6. Screen: Create Menu

Multi language in 10 steps


1. Install Language Pack: Joomla system labels: Read more... 2. Define Content Languages 3. Enable & Configure System - Language Filter plugin 4. Create Root Category for every Language 5. Create Articles 6. Create Menus (every Language own Menu) 7. Create Menu Items & Menu Item Association 8. Create Menu Modules (every Language own Menu Module) 9. Create Language Switcher Module 10.Redirect old incoming links

7. Create Menu Item

In Menus > [language] menu > create some Menu Items: Menu Item Type: [choose Type] Menu Title (menu button) + Alias (title in URL) Menu Location: [select language menu"] Language: [ select content language] Under parameters: [select some [language] Article or [language] Category]

7. Screen: Create Menu Item

7b. Menu items


Set

default Homepage in every language menu


Click in Menus > Menu Manager [language] on default star to set language flag

7b. Screen: Menu items

7c. Menu items


Use

Menu Item Associations to associate menu item with other language menu items

7c. Screen: Menu items

Multi language in 10 steps


1. Install Language Pack: Joomla system labels: Read more... 2. Define Content Languages 3. Enable & Configure System - Language Filter plugin 4. Create Root Category for every Language 5. Create Articles 6. Create Menus (every Language own Menu) 7. Create Menu Items & Menu Item Association 8. Create Menu Modules (every Language own Menu Module) 9. Create Language Switcher Module 10.Redirect old incoming links

8. Create Menu Module

In Extensions > Module Manager: create new Module of type "Menu"

Title: Dutch Menu Language: Dutch (NL) Select Menu: Dutch Menu Title: English Menu Language: English (UK) Select Menu: English Menu Title: Thai Menu Language: Thai (TH) Select Menu: Thai Menu

8. Screen: Create Menu Module

8. Screen: Create Menu Module

Multi language in 10 steps


1. Install Language Pack: Joomla system labels: Read more... 2. Define Content Languages 3. Enable & Configure System - Language Filter plugin 4. Create Root Category for every Language 5. Create Articles 6. Create Menus (every Language own Menu) 7. Create Menu Items & Menu Item Association 8. Create Menu Modules (every Language own Menu Module) 9. Create Language Switcher Module 10.Redirect old incoming links

9. Create Language Switcher Module

In Extensions > Module Manager: create new Module of type "Language Switcher"

Title: Language Switcher Position: position-7 Language: All Use Dropdown (on right): No

9. Screen: Language Switcher Module

Multi language in 10 steps


1. Install Language Pack: Joomla system labels: Read more... 2. Define Content Languages 3. Enable & Configure System - Language Filter plugin 4. Create Root Category for every Language 5. Create Articles 6. Create Menus (every Language own Menu) 7. Create Menu Items & Menu Item Association 8. Create Menu Modules (every Language own Menu Module) 9. Create Language Switcher Module 10.Redirect old incoming links

10. Redirect old incoming links


Incoming

links for old content?

Old link: /stroopwafels/stroopwafels.html New link: /nl/stroopwafels

Redirect

a couple of old URLs:

A couple of URLs: Components > Redirect

10. Redirect old incoming links

10. Redirect old incoming links

10b. Redirect old incoming links


Redirect

a lot of old URLs:

use .htaccess
Redirect 301 /old/relative/URL http://new/absolute/URL Redirect 301 /stroopwafels/stroopwafels.html http://www.example.com/nl/stroopwafels

Tool

to collect old URLs:

Xmap Sitemap on old site Browser View HTML Source Copy to Excel / Open Office Calc Construct Redirect statements

10b. Screen: Redirect old links

10b. Screen: Redirect old links

10b. Screen: Redirect old links

Column A: old relative URL Column B: new absolute URL Column C: formula: ="Redirect 301 "&A1&" "&B1

10b. Screen: Redirect old links

Bonus steps :-)


Tool

for Language status check Using 3rd Party Extensions

Tool for Language status check


Extensions

> Module Manager > [Site/Administrator -> select Administrator]


Multilanguage status Admin Module
This

module shows status of multilanguage parameters.

Tool for Language status check


Extensions > Language Manager > Content: Dutch (NL) unpublished Menus > English Menu: No default Home

Example 3 Party Extension, XMap

rd

Sitemap: Xmap

Install XMap, enable "Xmap - Content Plugin" Components > XMap > Create for all 3 menus a sitemap:

Title + Enable + choose Menu

Example 3 Party Extension, XMap

rd

In Dutch/English/Thai menu, create Xmap Menu Item:

Menu Item Type: [HTML Site map] Menu Title: Menu Location: [Thai Menu] Language: [Thai (Th)] Choose a site map: [Thai]

Don't forget Menu Item Association!

Questions?

Presentation: Peter Martin (pe7er)


twitter: @pe7er e-mail: info at db8.nl website: www.db8.nl

61

You might also like