2012年10月25日 星期四

CMSimple XH 1.5.5 繁體中文語言包

軟體名稱:CMSimple XH 1.5.5 繁體中文語言包
系統需求:PHP 4.3
軟體譯者:QQBoxy (Hoi)
適用版本:v1.5.4、v1.5.5
軟體內容:Cmsimple XH 繁體中文語言、Pluginloader 繁體中文語言
中文化下載:CMSimple_XH_1.5.4_utf-8_twlang.zip
其它版本清單:TW CMSimple XH
主程式下載:http://sourceforge.net/projects/cmsimplexh/files/
論壇文章:http://www.cmsimpleforum.com/viewtopic.php?f=39&t=4956
官方網站:http://www.cmsimple-xh.org/

系統優點:
CMSimple XH是個免資料庫的超小型內容管理系統,
具多國語言、風格模版、檔案上傳、可擴增插件等功能,
是個適合建立個人或中小企業公司的網際知識管理系統。

使用方法:
1.解壓縮後上傳至根目錄。

2.請進入您的CMSimple XH網站。

3.找到網站下方的 Login 點選進入。

4.請輸入密碼,預設的密碼為『test』。

5.點選上方『Settings』選單並選擇『CMS』選項配置。

6.找到『Language』的『Default』並選擇『tw』語系。

7.按下『Save』儲存即可。

小叮嚀:
網站開設後請記得修改您的管理者密碼。

後記:
今天正式將台灣CMSimple XH中文化網站建立在此,
也同時發佈1.5.4版本的中文化,如有翻譯錯誤請多多指教。

由1.5.3版本升級到1.5.4版本有個Unicode問題,
在登入Admin權限後頁面會變成空白的問題。
參考下面文章的解決方法:
http://cmsimpleforum.com/viewtopic.php?f=10&t=5196&p=30702
請打開『cmsimplexh\plugins\utf8\utils』路徑下的『unicode.php』檔案,
找到下面程式碼:
function utf8_from_unicode($arr) {
    ob_start();
    
    foreach (array_keys($arr) as $k) {
        
        # ASCII range (including control chars)
        if ( ($arr[$k] >= 0) && ($arr[$k] <= 0x007f) ) {
            
            echo chr($arr[$k]);
        
        # 2 byte sequence
        } else if ($arr[$k] <= 0x07ff) {
            
            echo chr(0xc0 | ($arr[$k] >> 6));
            echo chr(0x80 | ($arr[$k] & 0x003f));
        
        # Byte order mark (skip)
        } else if($arr[$k] == 0xFEFF) {
            
            // nop -- zap the BOM
        
        # Test for illegal surrogates
        } else if ($arr[$k] >= 0xD800 && $arr[$k] <= 0xDFFF) {
            
            // found a surrogate
            trigger_error(
                'utf8_from_unicode: Illegal surrogate '.
                    'at index: '.$k.', value: '.$arr[$k],
                E_USER_WARNING
                );
            
            return FALSE;
        
        # 3 byte sequence
        } else if ($arr[$k] <= 0xffff) {
            
            echo chr(0xe0 | ($arr[$k] >> 12));
            echo chr(0x80 | (($arr[$k] >> 6) & 0x003f));
            echo chr(0x80 | ($arr[$k] & 0x003f));
        
        # 4 byte sequence
        } else if ($arr[$k] <= 0x10ffff) {
            
            echo chr(0xf0 | ($arr[$k] >> 18));
            echo chr(0x80 | (($arr[$k] >> 12) & 0x3f));
            echo chr(0x80 | (($arr[$k] >> 6) & 0x3f));
            echo chr(0x80 | ($arr[$k] & 0x3f));
            
        } else {
            
            trigger_error(
                'utf8_from_unicode: Codepoint out of Unicode range '.
                    'at index: '.$k.', value: '.$arr[$k],
                E_USER_WARNING
                );
            
            // out of range
            return FALSE;
        }
    }
    
    $result = ob_get_contents();
    ob_end_clean();
    return $result;
}

取代為下面程式碼:
function utf8_from_unicode($arr) {
    $o = '';
    
    foreach (array_keys($arr) as $k) {
        
        # ASCII range (including control chars)
        if ( ($arr[$k] >= 0) && ($arr[$k] <= 0x007f) ) {
            
            $o .= chr($arr[$k]);
        
        # 2 byte sequence
        } else if ($arr[$k] <= 0x07ff) {
            
            $o .= chr(0xc0 | ($arr[$k] >> 6));
            $o .= chr(0x80 | ($arr[$k] & 0x003f));
        
        # Byte order mark (skip)
        } else if($arr[$k] == 0xFEFF) {
            
            // nop -- zap the BOM
        
        # Test for illegal surrogates
        } else if ($arr[$k] >= 0xD800 && $arr[$k] <= 0xDFFF) {
            
            // found a surrogate
            trigger_error(
                'utf8_from_unicode: Illegal surrogate '.
                    'at index: '.$k.', value: '.$arr[$k],
                E_USER_WARNING
                );
            
            return FALSE;
        
        # 3 byte sequence
        } else if ($arr[$k] <= 0xffff) {
            
            $o .= chr(0xe0 | ($arr[$k] >> 12));
            $o .= chr(0x80 | (($arr[$k] >> 6) & 0x003f));
            $o .= chr(0x80 | ($arr[$k] & 0x003f));
        
        # 4 byte sequence
        } else if ($arr[$k] <= 0x10ffff) {
            
            $o .= chr(0xf0 | ($arr[$k] >> 18));
            $o .= chr(0x80 | (($arr[$k] >> 12) & 0x3f));
            $o .= chr(0x80 | (($arr[$k] >> 6) & 0x3f));
            $o .= chr(0x80 | ($arr[$k] & 0x3f));
            
        } else {
            
            trigger_error(
                'utf8_from_unicode: Codepoint out of Unicode range '.
                    'at index: '.$k.', value: '.$arr[$k],
                E_USER_WARNING
                );
            
            // out of range
            return FALSE;
        }
    }
    
    return $o;
} 

修改完畢儲存後即可正常運作。

歡迎轉貼推廣,但請記得遵守部落格底部的創用CC條款。

關鍵字:CMS,CMSimple,XH,1.5,1.5.3,TW,zh-tw,繁,語言,語系,中文化,翻譯,內容管理,系統,台灣