您的位置:首页 > 运维架构 > 网站架构

Joomla! 2.5基础教程系列 - 多语言网站

2013-07-08 17:04 387 查看
多語言網站
我住在歐洲。歐盟有23種官方語言。如果你在這樣的地方創建網站,你就必須考慮多語言。 這裏涉及兩個挑戰:靜态的Joomla文本字符串翻譯和内容項的翻譯。第一個挑戰通常容易克服, 第二個才是真正的挑戰。

Joomla 2.5核心包括了超過40種語言,而且有望添加更多的語言。 本章我們利用Joomla 2.5核心創建多語言網站。

JOOMLA! 語言包
你可以從 Joomla Code64 或 Joomla extension directory65下載翻譯包并使用擴展管理器安裝(閱 讀全文: Chapter 13: 擴展管理)。我安裝了德語包和法語包。安裝後打開後台的擴展 → 語言管 理 就可以找到有三種已安裝語言(圖 1) 。

圖 1: 已安裝的語言(英語,德語)
語言配置

64 http://joomlacode.org/gf/project/jtranslation1_6/frs/
65 http://extensions.joomla.org/extensions/languages/translations-for-joomla
現在,還有必要看下語言配置,确認語言是否已發布(擴展 → 語言管理 → 已安裝)和語言

内容屬性是否正确(圖 2)。打開(擴展→語言管理→内容)。如果安裝好的語言沒有内容項, 點擊新 建圖标創建。這就是我安裝好法語包後所做的。

語言篩選器插件
圖 2: 編輯内容語言
要讓 Joomla 能分辨不同的語言,必須激活系統–語言篩選 插件(擴展→插件)。你隻要通過

選項設置就可以配置顯示給訪客的語言,不管是網站語言還是客戶浏覽器設置。另外一個要配置 的是 自動選擇語言。 啓用後,内容語言會根據前台語言設置自動發生變化。

圖 3: 插件 - 語言篩選
用戶在登錄前台後都可以配置他的前台語言。 多數時候,根據你的權限會有個用戶菜單提供

了不同的菜單項。在該用戶菜單,你還可以找到鏈接您的資料。點擊該鏈接,你可以查看和編輯

自己的個人資料。在基 本設置的資料編輯表單,用戶可以選擇配置并設定他們的前台語言(圖

4)。你可以使用默認的網站語言或可用的内容語言。根據這些設置, 語言插件可以讓你查看相

應語言的網站内容。

語言切換模塊
圖 4: 用戶資料 – 基本設置
通過激活語言切換 模塊,你可以在前台切換語言,不管你是訪客還是登陸用戶。在基本設置

你可以添加文本并選擇語言是以名稱還是國旗圖标的形式顯示。我相信有些第三方模闆在不 久 就會爲該模塊提供對應的模闆位置。在默認的模闆Beez2 中, position-7 和國旗一起結合工作。

圖 5: 語言切換
仔細閱讀說明文本是很要緊的

當切換語言但顯示該頁的菜單項未關聯到其它菜單項,模塊會重定向到選定 語言的首頁。然而,如果設定了語言篩選插件的菜單關聯參數,它會重定向 到選定語言的關聯菜單項。之後,就使用該語言所定義的導航了。如果插 件'系統-
語言篩選' 未啓用,會達不到預期結果。方法:

1. 打開語言管理的内容标簽,确保你想在内容内使用的語言已發布,還需 要用于網址的語言代碼和模塊顯示使用的圖片前綴。
2. 在菜單項創建指定語言的首頁,并定義每種已發布語言的默認首頁。
3. 之後,你可以給Joomla内的任意文章、分類、模塊、新聞源、友情鏈接指 定語言。
4. 确保模塊已發布、插件已啓用。
5. 當使用關聯菜單項,确保模塊顯示在有關頁面上。
6. 國旗或語言名稱的顯示方式取決于語言管理–内容 的語言排序。
如果發布了該模塊,建議也發布管理員多語言狀态模塊。

多語言内容項
正如我先前提到,每個内容項,比如文章,可以指定語言。困難就在于需要創建所有源和目

标語言的内容項(圖 6)。你可以創建任意語言的内容項,但不幸地是, Joomla 2.5 不支持翻譯

工作流,這意味着你要自己注意避免錯誤。

多語言網站
我的示例網站包括

• 帶有文章的首頁,

• 博客,

• '關于我們' 頁面,

• 一個聯系人表單。

圖 6: 語言字段

圖 7: 示例網站
首頁
我已經爲每種語言都創建了一些帶精選屬性的文章(參閱章節:典型文章)

爲了讓你易于上手,我專門錄制了視頻(2.5的不久後發布)。這是針對1.7 版本 (一樣有 效)

To make it easier for you to start I created a screencast (will be published soon for 2.5). This is the 1.7 version (which still works)66
我創建的菜單包含個默認叫做default的菜單項, 鏈接到 精選文章。 我通過點擊首頁圖标把

該菜單項設置爲首頁。菜單default 不需要對應的模塊,它隻要存在即可 (Joomla 2.5版本實際存 在該行爲,它有望在下個更新中得到更改)。

然後我針對每種語言創建菜單和相應的菜單模塊。我爲每種語言創建了菜單項: (Home, Startseite, Accueil)。通過點擊首頁 圖标可以配置菜單鏈接爲首頁(圖 8)。如果你看到菜單項 旁邊的國旗了,一切就正常,否則 ... 看視頻去吧 :)

66 http://vimeo.com/28593435
圖 8: 每種語言的首頁
博客
我在cocoate.com已經有了一個博客,所以我就是用了新聞源組件來顯示外部的博客條目。我

針對每種語言創建了新聞源項和對應的菜單項(參閱章節: 新聞源)。

'關于我們' 頁面
我針對每種語言都創建了 '關于我們' 頁面,如同章節如何創建 '關于我們' 頁面描述的那樣。

聯系人表單
我使用單一聯系人表單應對普通查詢。我僅需要一個聯系人項,所以沒必要分配語言。僅當 不同語言的聯系人數據有區别時,比如地址或郵件不同,才有必要針對每種語言都創建一個聯系 人項。

登錄表單
每個頁面都得配上登錄表單。我複制了兩次英文的登錄模塊,配置了菜單分配,修改了标題

并分配了正确的語言。現在就能在我的網站登錄和注冊了。

用戶菜單
我使用了現成的用戶菜單,上面有個人資料的鏈接,還能創建文章或友情鏈接(圖 9)。

圖 9: 前台編輯
如你所見,用Joomla創建多語言網站是非常的簡單!

語言覆蓋
如果你發現網站的語言字符串不合适,可以通過擴展 -> 語言管理 -> 覆蓋更改。

語言字符串由兩部分組成:特定的語言常量和它的值。比如,字符串内:

COM_CONTENT_READ_MORE="Read more: "
'COM_CONTENT_READ_MORE' 是常量、 ' Read More:'
就是數值。 要創建數值覆蓋必須使用特定的語言常量。因此,你可以通過下方的搜索字 段搜索要更改的常量或數值。 點擊所需的結果就會在表單内自動插入正确的常量。
你可以搜索語言字符串并把自定義文本填入表單以便覆蓋(圖 10)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: