2010年11月26日 星期五

還有一類joomla中文化的問題與方法!

就像前面文章所提過的,joomla元件的中文化其實有時還是有其必須進一步特殊更改的,因為各個元組件的程式編寫者一開始的規劃不同,所以要達到全面的中文化語系,實在無法用一種方式就能確保全部的元件都可以達到前後台全面的中文化,我現在就再來講一種類型,以著名的元件GroupJive為例,要達到其前台能中文化,是很簡單而標準的,只要將其元件包解壓縮,找到其中language資料夾裏的english.php,將這個語言檔另外拷備成一份檔名為tradiction_chinese.php(檔名也可隨便取,只要這樣較符合通用的習慣,另外還必須注意,若字形編碼不是utf-8者,在做中文翻譯時,務必要轉換成utf-8,才不會到網頁裏看到的中文字變亂碼),然後開始進行翻譯即可。最後再從解壓縮的根目錄裏找到.xml檔,在適當的相對應位置加入(如何做,請看這裏)你新建的檔案及其路徑的一個字串)再壓縮打包成zip檔就可以安裝到joomla(安裝GroupJive之前好像要先安裝CB,否則裝完之後,joomla系統會變全白,先安裝CB,再安裝GroupJive就可以正常運作)。然而安裝完,滑鼠點GroupJive這個元件要進一步設定時,會發現其後台的管理介面仍然完全是英文介面,然而前站已可以正常使用中文介面了,這樣對於一般用戶在前台使用已不成問題。然而對於英文不怎樣的後台管理者,要做適當的設定,可得花一番心力看懂其英文說明,這時想努力找到能在後台將GroupJive語言設定成中文,可是實在是找不到,面對這種類型的元件,只能說元件程式編寫者,不想使其後台的語言成為一個可自動偵測你的joomla內定系統語系而改變其顯示的語系,它就是要你只能用英文的啦!

難而對於我們就是要把它改成中文語系的人而言,要如何改它呢?底下我來說明我的做法:

 

首先在安裝好的後台裏選擇到GroupJive這個元作的管理介面

image

隨便找一段較正常(字型、大小、顏色通通一樣的一個字串即可)的字複製起來,

image

然後以ssh連線進到server端,並進到joomla資料夾裏的administrator/components/com_groupjive/,然後打入grep –rw “Set Global Options for GroupJive” *

image

(為何在這個資料夾裏找,原因是因為這個字串是在後台管理介面看到的,而joomla的元件屬於後台的,都放在administrator/components/裏,而com_groupjive則是GroupJive的資料夾)

如上圖所示,找到admin.groupjive.html.php這個檔案,以vim指令打開看一看

vim admin.groupjive.html.php

如下圖在命令列打入/Set Global Options for GroupJive 搜尋該字串

image

如下圖,它會找到該字串並黃色底show出。

image

接著按你鍵盤上的Ins鍵將滑鼠移到你要翻譯的字串並將其加入中文翻譯,

image

存檔後,再以網頁進到joomla後台看看是否改變了GroupJive的管理該串語言顯示了,

image

如上圖,果然改變了!

接著是回到window pc端,將原GroupJive解壓縮開的檔案,找到admin.groupjive.html.php,然後全面的將文字介面全面中文化,其中必須注意的是不要動到屬於網頁語法的部份,如下圖中紅線拉的相似屬性部份

image

避免改到不該改的部份,這一部份,最穩的做法是配合後台管理介面所看到的文字(如下圖)與以文字編輯軟體打開的該檔案相互核對,只要改後台管理介面所看得到文字即可。詳細做法如下:

將joomla後台管理介面所看到的頁面文字複製(如下圖)

image

然後在到編輯器中找到該字串並將其更改(如下圖)

image

全部改完後,再將其存檔(不用更改檔名),然後再將整個元件打包,然後上傳安裝到joomla裏,果然就全部中文化了。

image

然而這樣的中文化還是有其缺點的,那就是不識中文字的人在後台是看不懂的,因為它是不能隨系統自動調整後台語系的,而這也不能怪我,因為原作者本來就不打算讓後台能自動更換語系,否則他也不會寫一個後台只會顯示英文的管理介面了(雖然英文是國際語言,但也並不是所有的人都看的懂啊!)所以我將其改為中文,也只是將英文改成全球最多人用的語言罷了!

當然,為了解決因為我改了後台語系而造成之後若這版本流出,導致一部份不懂中文的人無法使用,所以我只好在中文後面保留原來的英文做註,(如果你有存細看上圖的話就會發現了,)!而這也是沒有辦法中的辦法。畢盡我不會真正程式語言,無法做太大輻的更改。

沒有留言: