multi language joomla site without 3rd-party-extensions

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

Upload: ngonga

Post on 04-Jan-2017

235 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Multi language Joomla site without 3rd-party-extensions

Multi language Joomla site without 3rd-party-extensions

by Peter Martin (“pe7er”)

twitter: @pe7er

website: www.db8.nl

JoomlaDay Bangkok 2012February 25th 2012

Page 2: Multi language Joomla site without 3rd-party-extensions

2

Welcome!

Peter Martin (“pe7er”), Nijmegen, Netherlands

Sheets will be available electronically Thai examples → used Google Translate

Page 3: Multi language Joomla site without 3rd-party-extensions

3

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)

Page 4: Multi language Joomla site without 3rd-party-extensions

4

How to create

a Multilanguage website

With Joomla 2.5

in 10 steps?

Joomla! 2.5

Page 5: Multi language Joomla site without 3rd-party-extensions

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

Page 6: Multi language Joomla site without 3rd-party-extensions

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

Page 7: Multi language Joomla site without 3rd-party-extensions

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

Page 8: Multi language Joomla site without 3rd-party-extensions

1. Screen: Install Language pack

Page 9: Multi language Joomla site without 3rd-party-extensions

1. Screen: Installed Languages

Page 10: Multi language Joomla site without 3rd-party-extensions

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

Page 11: Multi language Joomla site without 3rd-party-extensions

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

Page 12: Multi language Joomla site without 3rd-party-extensions

2. Screen: Content Language

Page 13: Multi language Joomla site without 3rd-party-extensions

2. Screen: Content Languages

Page 14: Multi language Joomla site without 3rd-party-extensions

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

Page 15: Multi language Joomla site without 3rd-party-extensions

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)

Page 16: Multi language Joomla site without 3rd-party-extensions

3. Screen:“System - Language Filter” plugin

Page 17: Multi language Joomla site without 3rd-party-extensions

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

Page 18: Multi language Joomla site without 3rd-party-extensions

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]

Page 19: Multi language Joomla site without 3rd-party-extensions

4. Screen: Create Language Categories

Page 20: Multi language Joomla site without 3rd-party-extensions

4b. Create Language Categories

Create subcategories under the language categories– Nederlands (= Dutch)

Nieuws Stroopwafels

– English News Stroopwaffles

– Thai ข่าว Stroopwafels (no Thai translation?)

Page 21: Multi language Joomla site without 3rd-party-extensions

4. Screen: Create Language Categories

Page 22: Multi language Joomla site without 3rd-party-extensions

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

Page 23: Multi language Joomla site without 3rd-party-extensions

5. Create Articles

In Content > Article Manager create "Articles" and:– Select “Language” category

– Select “Language” [select content language]

Page 24: Multi language Joomla site without 3rd-party-extensions

5. Screen: Create Articles

Page 25: Multi language Joomla site without 3rd-party-extensions

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

Page 26: Multi language Joomla site without 3rd-party-extensions

5b. Screen: Create Articles

Page 27: Multi language Joomla site without 3rd-party-extensions

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 AliasOr Global Configuration > Site > SEO

Settings > Unicode Aliases: Yes

Page 28: Multi language Joomla site without 3rd-party-extensions

5c. Screen: Create Articles

Page 29: Multi language Joomla site without 3rd-party-extensions

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

Page 30: Multi language Joomla site without 3rd-party-extensions

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”

Page 31: Multi language Joomla site without 3rd-party-extensions

6. Screen: Create Menu

Page 32: Multi language Joomla site without 3rd-party-extensions

6. Screen: Create Menu

Page 33: Multi language Joomla site without 3rd-party-extensions

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

Page 34: Multi language Joomla site without 3rd-party-extensions

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]

Page 35: Multi language Joomla site without 3rd-party-extensions

7. Screen: Create Menu Item

Page 36: Multi language Joomla site without 3rd-party-extensions

7b. Menu items

Set default “Homepage” in every language menu– Click in Menus > Menu Manager [language]

on “default” star to set language flag

Page 37: Multi language Joomla site without 3rd-party-extensions

7b. Screen: Menu items

Page 38: Multi language Joomla site without 3rd-party-extensions

7c. Menu items

Use “Menu Item Associations” to associate menu item with other language menu items

Page 39: Multi language Joomla site without 3rd-party-extensions

7c. Screen: Menu items

Page 40: Multi language Joomla site without 3rd-party-extensions

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

Page 41: Multi language Joomla site without 3rd-party-extensions

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 MenuLanguage: English (UK)Select Menu: English Menu

– Title: Thai MenuLanguage: Thai (TH)Select Menu: Thai Menu

Page 42: Multi language Joomla site without 3rd-party-extensions

8. Screen: Create “Menu” Module

Page 43: Multi language Joomla site without 3rd-party-extensions

8. Screen: Create “Menu” Module

Page 44: Multi language Joomla site without 3rd-party-extensions

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

Page 45: Multi language Joomla site without 3rd-party-extensions

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

Page 46: Multi language Joomla site without 3rd-party-extensions

9. Screen: “Language Switcher” Module

Page 47: Multi language Joomla site without 3rd-party-extensions

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

Page 48: Multi language Joomla site without 3rd-party-extensions

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

Page 49: Multi language Joomla site without 3rd-party-extensions

10. Redirect old incoming links

Page 50: Multi language Joomla site without 3rd-party-extensions

10. Redirect old incoming links

Page 51: Multi language Joomla site without 3rd-party-extensions

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

Page 52: Multi language Joomla site without 3rd-party-extensions

10b. Screen: Redirect old links

Page 53: Multi language Joomla site without 3rd-party-extensions

10b. Screen: Redirect old links

Page 54: Multi language Joomla site without 3rd-party-extensions

10b. Screen: Redirect old links

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

Page 55: Multi language Joomla site without 3rd-party-extensions

10b. Screen: Redirect old links

Page 56: Multi language Joomla site without 3rd-party-extensions

Bonus steps :-)

Tool for Language status check Using 3rd Party Extensions

Page 57: Multi language Joomla site without 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.

Page 58: Multi language Joomla site without 3rd-party-extensions

Tool for Language status check

Extensions > Language Manager > Content: Dutch (NL) unpublished

Menus > English Menu: No default “Home”

Page 59: Multi language Joomla site without 3rd-party-extensions

Example 3rd Party Extension, XMap

Sitemap: Xmap– Install XMap, enable "Xmap - Content Plugin"

– Components > XMap > Create for all 3 menus a sitemap: Title + Enable + choose Menu

Page 60: Multi language Joomla site without 3rd-party-extensions

Example 3rd Party Extension, XMap

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”!

Page 61: Multi language Joomla site without 3rd-party-extensions

61

Questions?

Presentation: – Peter Martin (pe7er)– twitter: @pe7er– e-mail: info at db8.nl– website: www.db8.nl