Pages

23/12/2014

Google Blogger 轉用 Wordpress, 資料轉移及轉換



又快到聖誕節,追看記錄。原來已經使用了Blogger兩年。兩年內六十多篇文章,好像走到了一個樽頸位置。

不想再受制於Blogger,Blogger是唯一一個Google服務讓我感到糟透了的感覺(bad feeling)。

看到不少評論都讚盡WordPress的好處,今天就試一試轉換陣地。
簡單地說,為什麼要轉用Wordpress。以下是我在Blogger感受到的……

首先Blogger是Google提供的免費服務,始終有點擔心。Google的主要收入來源是廣告,那些你以為免費提供的服務其實都有收入,例如Youtube有廣告、Gmail有專為公司/企業而設的Business account、Google Drive有收費擴充計劃。每年不少企業願意投放金錢在上。但是Blogger信相是沒有收入的,大概會有帶動更多Google Adsense收入來源。
Blogger處在一個曖昧的節骨眼上,前為blogspot,後被Google收購轉名為Blogger。 動機十分明顯,就是在社交平台上參上一腳。到了後來出了Google+,部份功能有些許重疊,幸好兩者定位不同。仍然有生存空間。

iGoogle 能自訂 Google 首頁,可以加入各種不同的小工具。已經停止服務。


不過作為Blogger管理者的你,就需要認真考慮一下。假如有一天,很不幸地Google 宣佈將停止Blogger服務。那辛苦建立起來的王國就有如災難性地崩塌,那都不是問題,可怕的是要將一磚一瓦搬到新地方重新建設。
Blogger的匯出功能,成功匯出所有文章到一個XML。相信可以直接匯入的Wordpress或其它同類型。不過還有圖片的問題需要解決等等

Blogger實在讓我預到太多Bugs了,例如動態檢視範本,一試用廣告就失效了。不知是否剛推出有點相容問題未處理好,其後也不敢再試。
還有一次當啟動賺利功能後並且成勁與Google Adsense 連接後,一天忽然那個[收益]的圖示不見了。那是什麼意思,最後解決的方法是我透過意見回饋後一段時間,問題自行解決了。

除此之外,部份的插件/小工具就是沒作用。例如最近更新的文章不能正常顯示。
雖然有Bugs是人知常情,例如Youtube剛釋出播放清單功能,可以將同一段視頻不斷重覆加到清單中。那技術上沒有出錯,只是沒有預期使用者會那麼無聊地做一些沒有意義又會對系統做成不健康的行為。

可能Blogger拿到的資源比較少,但錯誤錯在主要的功能上,令杜芬宅不能接受,有點令人失望,那與我印象中一直以來的Google 形像有落差。

所以唯有嘗試一下,闖一闖Blogger以外的世界。

在此之前,在網上找一找,發現不少老外都傾向推介新手用Blogger,進階推薦用Wordpress。更多更多的就是wordpress的好處那那那這這這。在此列舉內容重點︰

Blogger 的容量限制包括,
  • Blog 數量︰每帳號100個
  • 文章 數量︰無限。所有文章都會儲存到你的帳號,不論是發佈或是草稿。除非你手動刪除了。
  • 文章 容量大小︰不限
  • 網頁 容量大小︰每頁1MB(包括主要及已發佈的網頁),如主頁顯示過多文章內容可能超預此上限。
  • 留言 數量︰官文沒有透露,不過與Google+連結後應該沒有。
  • 圖片 數量︰總計1GB,不清楚是每Blog 1GB,還是每帳號1GB。應該是後者,如果與Google+連結,將會共享Google Drive容量
  • 成員 數量︰每Blog 上限100名
  • 標籤 數量︰每Blog 上限2000個,每篇文章上限20個
Wordpress的容量限制則依賴你的伺服器提供的空間。

Wordpress是一個免費及開源的 建設Blog工具/平台,那能夠吸引更多人參予開發及建設。
包括與Blogger相比有更多的免費小工具/插件、主題。

Wordpress有更全面的可自定義性,透過更多的主題/插件,你可享有更多的彈性和自由度。
最後,由於是採用開放源代碼,你可以任意修改。

從前是Google持有、保管、擁有你的文章及你的Blog,現在Wordpress是你自已擁有自已的文章。

話雖如此,還是慢慢來的好,杜芬宅還不會貿然放棄Blogger,決定兩邊一起用(Parallel run)。

使用WordPress面對起初使用Blogger的原由,就是寄存服務(Web Hosting),域名(Domain name),今次租用一年的伺服器,內已有WordPress提供。在此就不詳述。

大家租用同類服務時,必需確定對方的服務範圍。是否提供Wordpress一鍵安裝服務,或是已經安裝。如未有提供,能否自己上傳整個WordPress到伺服器。

是否支援PHP、是否包含Mysql、因為WordPress都用到那些,記得精明地選擇服務。

如果您希望在Xampp/Lamp/Wamp 上築起WordPress,
老老實實,杜芬宅也是第一次使用WordPress。以上情況未明就不在此列。
不過發現老是在伺服器上動手腳有點煩,所以還是在本機架設了WordPress玩玩。

Install WordPress

安裝WordPress前,請看系統需求。
https://tw.wordpress.org/txt-install/

一鍵安裝WordPress後(以下簡稱為WP),進入WordPress的控制台
your-domain-name.com/wp-admin/

在本機的XAMPP上安裝WP,會順序看見圖一圖二圖三。
不過我在租用的伺服器上就有點不同,所以如果您也是租用伺服器的話。
對方可能在整合(integration)WP到它們的系統時,對WP進行了修改。
圖一
圖二
圖三

以我的情況為例,有一個安裝WP的精靈幫我安裝WP。
安裝前已經會問我圖三的資料,安裝後會自動跳到圖四。

我在本機為例,圖三前要先自行到
localhost/phpmyadmin
建立一個資料庫(database)後再在
圖三輸入正確的資料庫及帳號才能成功繼續
在本機安裝要先準備好資料庫,不然會發生錯誤

P.S 資料表前綴 即是 資料表(table)的名字以XXX開始
假如您有三個WP共用一個資料庫,
第一個健身網站前綴可以填gym_
第二個是論壇前綴可以填forum_
第三個是個人日誌可以填log_

那資料表就會名命如下
gym_posts, gym_users, gym_terms ...
log_posts, log_users, log_terms ...

成功與資料庫連結
在此的資訊日後可再作修改,不用在此逗留太久
按登入繼續
開始真正登入到WP
成功登入到WP控制台

到了那裡,能夠進入WP控制台已經完成安裝程序。接下來是將Blogger文章搬到WP

Blogger Post import to WP

選工具>匯入>Blogger
安裝該插件,準備將Blogger文章複製到WP
安裝插件
細心觀看描述能了解 插件安裝進度及狀態

安裝後按 [啟用外掛與執行匯入程式] 開始複製文章,如果不小心跳過那頁不要緊。
回到 工具>匯入 再按一下 Blogger 即可

按下 [Authorize] ,會到了Google Blogger 確認授權 WP
現在可以使用Import Blogger工具了
檢視與管理您的 Blogger 中的文章和網誌
檢視與管理您的 Blogger 留言
P.S 如果Blogger已經轉用了Google+ 取代 Blogger留言功能,Google+的留言是抓不到去WP的。

授權後便可看到自己的Blogger,文章、留言等資料
如果想重新授權。例如你用了錯誤的Gmail acount,請按 [Clear account information]

按在旁的Import即可匯入文章到Blogger。
import 需時長,其次是經常中繼,
有時候,[Importing...] 會變成 [Continues]。按 [Continues] 繼續匯入工作。
如果久久沒有變成[Continues],需要重新整理網頁。按 [Continues] 繼續匯入工作。

大概每10~13篇文章會自動停止,要按 [Continues]。
全部文章匯入後,會開始匯入圖片。

同樣,匯入圖片每10張會自動停止,要按 [Continues]。


最後,當匯入完成後,還有點手尾跟進。

Convert Categories to Tags

首先就是匯入過程中,會把Blogger 文章的 標籤(Tags) 轉換成 Categories(WP)。

我們可以使用 分類與標籤轉換器,在工具>匯入中安裝並啟用與執行。


選取勾勾後,不要按[Categories to Tags]
應該拉到最底,按[Convert Categories to Tags]

按[Categories to Tags] 是檢視現有Categories,讓你選取
按[Tags to Categories] 反之亦然,最底的按鈕才是開始轉換

不要像我一樣都選取勾勾後去按[Categories to Tags],結果會重新整理,即是要再選取一次。T_T''||

都處理好Categories 和 Tags 後,需要處理 Blogger 的繼續閱讀標示 (jump break)。

Jump break line

如果你在WP去 Edit 一篇文章,插入 繼續閱讀標籤(read more tag)

就會發現,Blogger是用<!--more-->,WP也是用<!--more-->
但不知為何在匯入的過程中,<!--more--> 全變成<a name='more'></a>。

相信理由是因為匯入時抓取的是Blogger render後的結果,並不是抓取源文件。
經查察後發現,文章內容都是儲存在你名命的資料庫當中有個 wp_post 資料表。

你可以直接行Update query 更新內容,
或Export 資料表手動更改再Import。
建議可先匯出作備份用途

在此之前,順便檢查一下,有沒有文章忘了加入繼續閱讀標示。
SELECT `post_title` FROM `wp_posts` WHERE `post_content` not like '%%'

P.S 不知為什麼,有些文章在匯入時重疊了=.=

檢視一下,用了<a name='more'.. 的文章數量。方便更新後核對。
SELECT `post_title` FROM `wp_posts` WHERE `post_content` like '%%'

圖二十三︰

使用以下更新,不過那是未完整的法語,我們先預視結果一次。


start transaction;
update `wp_posts` set `post_content` = replace(`post_content`, '', '') where `post_content` like '%%';
select `post_title`, `post_content` from `wp_posts` where `post_content` like '%%';

圖二十四︰不是圖片出錯,原來只會顯示最後一句語法。
不過執行後你可以看到,預計會更新的文章。
文章應該與上圖列出的一樣


今次加commit;
更新會正式採用,即是
start transaction;
update `wp_posts` set `post_content` = replace(`post_content`, '', '') where `post_content` like '%%';
commit;
select `post_title`, `post_content` from `wp_posts` where `post_content` like '%%';

跑完更新後,將會列出已取代<a> tag 成<!-- --> 的文章。
看一看是否和剛剛的文章數量和標題一樣。照道理,圖二十三、圖二十四列出的文章應該是一樣的。

好,到了那裡。如果你不明白你是否做到,可以回到WP首頁看一看。
文章成功地斷開了=]

如果由 SELECT `...` 開始已經聽不明白我說什麼做什麼的朋友,是正常的。
因為那些是資料庫的語法,與WP強調不懂程式就可以完成Blog的想法自然有些出入。

不用擔心,承上你可以手動更新內容。

首先回到
localhost/phpmyadmin
先選資料庫,再選資料表,
按匯出>[GO]

有一個 wp_posts.sql 下載到你的電腦,它就是儲存著所有文章內容的檔案。
用文字編輯軟件開啟它,例如notepad / notepad++ / sublime
使用取代功能,將 <a name='more'></a> 取代成 <!--more-->


NOTEPAD 的開啟後果

NOTEPAD++ 的開啟後果

SUBLIME 的開啟後果

取代後記得存檔,現在把新的內容倒回WP內。

在剛剛匯出檔案的頁面,按旁邊的工具。
按Empty the table(TRUNCATE),清空表格。如果不清空表格直接(傾)倒資料會發生錯誤,因為文章已經存在,不能新增相同的文章(不想解釋太多,不用理解太多,跟著做就是了^_^)。

清空表格後,按旁邊的Import>Choose File>Go
選需要倒回的wp_posts.sql檔案即可。

那種用法當然有缺點,如果你有上百上千篇文章,文字編輯軟件回應會很慢。
甚至當掉。
還有就是你不能預視將會更改的文章,
以及不能檢查那些沒有(忘了插入)繼續閱讀標示的文章。

到了那裡,寫完了。先讓杜芬宅歇一歇。

日後有機會再補充,希望到了那裡已經沒有事需要再跟進。

No comments:

Post a Comment