升級記

本棧自從06年初轉到 WordPress 以後,一直沿用 WordPress 2.0X 版本。去年曾經嘗試升級,但卻失敗了,要 Icdsoft 從備份中找出舊檔案才能回復運作。尤其是這個 theme 被我 customised 得太多,每次改動都要調校很久,才能恢復原狀,於是便一拖再拖,完全提不起勁去升級。

事隔一年有多,Wordpress 已經推出到 2.6 ,驚覺真的已經滯後了太多。上星期又收到 Icdsoft 的電郵,說沿用的資料庫是 PHP4 版本,因為這個版本已經停止開發和支援很久,有機會出現保安漏洞,他們會考慮刪除舊版的資料庫,我一看之下大驚,怕這裡會像人生中的其他東西一樣,突然無聲無息地消失了。

不可以再拖了,就一併將 PHP database 和 WordPress 都更新至最新版本吧!

昨天,終於有點時間可以實行這個升級大計,我決定先將 PHP 更新,誰知一開始就撞板了。用 Icdsoft 的 PHP 升級工具更新以後,整個 blog 都變成亂碼,我本來的設定是從 PHP4 的 UTF8 coding 更新至 PHP5 的 UTF_General_CI coding,於是便改用各種不同的 coding 設定,搞了個多小時,亂碼依舊。最後寫去問 Icdsoft 的 support ,他們不消十幾分鐘就幫我解答了,因為我的 WordPress 太舊,要在 wp-db.php 中加一行 code 才能順利使用 PHP5 的 UTF8 coding 。他們一改以後,亂碼就立刻消失了,網站也即時回復原狀!

之後就是將那陳年 WordPress 升級,吸取去年應該是 plugin 出問題的教訓,我先在我的 theme 裡面找出那些用 plugin 的 code ,加上 ! – – 和 – – 來關掉,之後再逐一關閉所有插件,測試在舊版中也運行正常後,才將新版檔案蓋過舊版。

因為升級距離太大,我還要將 database 的格式也同時 upgrade 。當中出了點點問題,所有舊的 category 的名字都消失了,不過幸好除了「所感」欄之外,其他欄目只名稱消失,大部份文章依然分開在不同的欄位之下。我只要將名稱加回,以及將變成 uncategorised 的文章放回「所感」欄,所有欄目都沒問題了。

然後,我便將舊的 plugin 一個個地開啟,也將對應的 ! – – 和 – – 移除。我原先預計沒有說明支援 WordPress 2.6 的 Ultimate Tag Warrior 和 PostCount 兩個插件會失效,原有的「標籤」和「人氣指數」將不能使用,但原來 WordPress 有 Ultimate Tag Warrior 的匯入工具,一按就將舊的標籤變成新的 WordPress native tag 了。至於 PostCount ,雖然作者沒有更新這麼久,也沒說明支援新版 WordPress ,原來再開啟這個插件,一切就恢復正常了。

其他的插件,大部份已經有對應 2.6 的新版,我逐一升級,終於在今早,頁面的所有功能就回復升級之前一樣了,只是Tag Cloud 和 Mobile 版的版面跟之前有點點不同。

今次的升級工程,遇到的困難比預期少,所需的時間也比預期短,實在值得慶祝一下。不過,如果各位朋友見到舊文或任何頁面有甚麼不妥,麻煩留言告訴我吧!

6 Comments Add yours

  1. Stannum says:

    Mobile 版有點問題,暫時關閉。

  2. Stannum says:

    Mobile 版重開,希望各位可以用手機幫忙測試(Iphone 除外),看看有沒有問題。

  3. 大雄 says:

    你用開邊個mobile版架? 我以前用開個個無upgrade, 依家無得用……

  4. Stannum says:

    我用 WordPress Mobile Edition ,不過因為我而家部 iphone 出原版,我都唔係太知係咪 work。

  5. Alan says:

    我也遇過一樣的 PHP encoding 既問題,也是 icdsoft 的 support 幫我解決 🙂

  6. Stannum says:

    Alan :他們的支援真是又快又幫得手,我已經向週圍好多人推介左佢地既服務。

Leave a Reply

Your email address will not be published. Required fields are marked *