最近在考慮把 lifetype.org.cn 透過 mod_rewrite 的方式,把網址轉換到 lifetype.org.tw,這樣可以讓更多的大陸朋友能夠來認識 LifeType。但是,首先要解決的問題是,如何做到線上簡繁互換,讓大陸網友能夠使用他們熟悉的簡體環境。
目前有幾個解決的方式:
- 透過瀏覽器的外掛程式幫忙,做到及時的簡繁互換。例如,IE 下的 Alibabar 與 Firefox 下的新同文堂。
- 透過 Server Side Script 如 PHP,寫一支簡繁轉換的 Gateway,例如在 Jerry 網頁所說的方式。
- 透過 Client Side Script 如 JavaScript 來作線上轉換,並且透過 Cookie 紀錄是否需要自動轉換成繁體或簡體。如 Joomla AutoIt! 這裡所說的方式。
第一個方式需要使用者自行安裝這些外掛程式,其實不是很方便。第二個方式要改的還不少,而且沒辦法直接使用到 blog, wiki 與 forum 上面。所以決定採用第三種方式,因為唯一的修改就是改模版。
原本很高興以為下載之後就能用,結果在繁體的環境下好像有 Bug。所以把整個程式Debug 並且 Refactoring 了一下,應該可以用在繁體了。有興趣的人請依照下列方式安裝:
- 下載我修改過的 tw_cn.zip。
- 解開後上傳到你的網站上,例如 http://your-site/tw_cn.js
- 在你希望放上『簡繁互轉』的連結的地方加上
<a id="translateLink">簡體</a>
- 然後,網頁的 </body> 標籤前面加上
<script type="text/javascript" src="http://your-site/tw_cn.js"></script>
<script type="text/javascript">
var defaultEncoding = 1;
var translateDelay = 0;
var cookieDomain = "http://your-site";
var msgToTraditionalChinese = "繁體";
var msgToSimplifiedChinese = "简体";
var translateButtonId = "translateLink";
translateInitilization();
</Script>
共有五個參數可以設定:
- defaultEncoding:網頁預設語系:1 是繁體中文,2是簡體中文。預設值為 1。
- translateDelay:延遲翻譯的時間:如果你不是放在 </body> 之前,請設定延遲翻譯時間。如 100 代表 100ms。預設值為 0。
- cookieDomain:Cookie 網址。這個請務必要設定,沒有預設值。
- msgToTraditionalChinese:切換至繁體中文的訊息。預設值為 "繁體"。
- msgToSimplifiedChinese:切換至簡體中文的訊息。預設值為 "簡體"。
- translateButtonId:簡繁互換連結的 Id。預設值為 "translateLink"。
這樣應該就可以了。不過,要是使用者的瀏覽器不支援 Javascript,那就沒輒了。
PS. 這支程式看起來流傳已久,所以不知道原始作者的釋出版權為何。所以我也沒有加上版權標示。
真實引用網址:
http://blog.markplace.net/trackback.php?id=150
迴響 ↓
網頁簡繁互轉
Angel 發表於 29/11/2007, 22:08
我在大陸購買網頁軟體,但ftp上傳后都是簡體字,可是想把網站改成繁體字,不知如何修改呢?
這 ...
Mark 發表於 30/11/2007, 12:39
我就不知道了!
回覆: 在 UTF8 編碼下的網頁簡繁互轉
KuenWei 發表於 25/01/2008, 02:46
感謝,我也弄好了,真的很開心可以得到這麼有用的資訊。
受用無窮
Lance 發表於 31/01/2008, 09:04
本以為繁簡切換需要將整個網頁做翻譯動作!!還好還沒執行,就看到你這篇文章!真的是太幸運了!!
Question
eddie 發表於 06/03/2008, 16:35
我不太懂網頁設計,我的網頁用Joomla, 請問"在你希望放上『簡繁互轉』的連結的地方加上 -
簡體
是什麼意思 ?要加在那個文件? 感謝 !
To eddie
markwu 發表於 07/03/2008, 08:40
我建議你就直接把 『簡繁互轉的連結』放在 index.php 的 [body]與[/body]的 tag 內的任何地方
看看顯示出來的效果,然後再作調整。
謝謝
eddie 發表於 07/03/2008, 21:39
謝謝 .
把 『簡繁互轉的連結』放在 index.php 的 [/boby]前,
效果很好.
To markwu
隻 發表於 06/05/2008, 08:09
例如像站內搜尋的input裡面的字無法被此繁簡轉換的功能所更改
請問有無其他辦法呢??
感謝分享那麼有用的功能^^
bcdej
bcdej 發表於 12/06/2008, 23:14
分析了半天,终于找到了FireFox下有Flash(包括用JS导入Flash)的页面出现too much recursion错误的解决办法。
在translateBody()函数的var obj=objs.item(i)那一行下边加一行if( obj.tagName == "OBJECT" || obj.tagName == "SCRIPT" || obj.tagName == "EMBED" )continue;
这样就达到了对OBJECT、SCRIPT、EMBED标签编译的屏蔽,从而顺利完成编译。
比较郁闷的是Safari下边编译还是出错,暂时没有找到问题在哪。
原来Safari下是解决了
bcdej 發表於 12/06/2008, 23:20
我晕,原来Safari下是解决了的,我没有注意……
整合新同文堂字詞庫方法
tka 發表於 25/10/2008, 03:44
您好 拜讀您的大作後
小弟將新同文堂的字詞庫與這篇文章的程式做了點修改與整合
讓程式可以同時處理不同編碼的網頁,並新同文堂中的所提供字詞庫對應表
細節請參考http://www.tkalu.com/blog/2008/10/25/41/
Firefox 轉不過來
Jason 發表於 08/06/2009, 07:37
在 Firefox 上轉不過來
怎么突然连接不了?
Edward 發表於 08/07/2009, 07:28
http://www.chinawealthplanning.com/index.php?lang=tc
请问mark
我的站点用了您的方法, 之前用的好好的,今天就突然连接不了了,请问是怎么解决呢,麻烦了。
firefox 的設為首頁,收藏本網
leong 發表於 27/01/2010, 09:53
加了後,firefox 的設為首頁和收藏本網功能便失效,
IE無問題