前面我們介紹瞭如果安裝 WordPress MU,安裝完成後我們就需要把每個獨立站點的資料轉移到 MU 中,在 MU 中最原始的站點資料是不需要改動,只需要轉移新新增的站點檔案和資料,而這個轉移的過程並不是很輕鬆。
WordPress 的資料包括程式檔案和資料庫,所以轉移的過程也分為兩部分:
首先,我們來瞭解一下新建立的站點資料夾和資料表結構,在 WordPress 中新建的資料庫表字首是:「wp_」 的形式,而 MU 建立的第二個站點資料庫表字首是:「wp_2_」(2 是新站點的 ID) 的形式;而 MU 建立新站點時會在主站的 uploads 資料夾下建立 sites 資料夾,再根據 ID(假如 ID 為 2) 會在 sites 資料夾下再建立數字 「2」 這個資料夾,這樣我們就明白資料該如何轉移了。
一、程式檔案的轉移轉移的目標:主題和 uploads 資料夾下的所有檔案
1 、主題,我們可以在 「管理網路」 中的 「主題」 中直接安裝,也可以在主機上複製到主站的 themes 資料夾下,然後在管理網路——外觀——主題,點選 「開放給整個站點網路使用」,這時我們就可以返回到新站點中進行啟用該主題。
2 、檔案,把 uploads 資料夾下的所有檔案都轉移到 「2」 這個資料夾下即可。
二、資料庫的轉移
也許我們會想到用 WP 自身的匯入與匯出工具,把所有文章全部匯出,再匯入到新的站點,如果文章多,匯出的 XML 檔案好幾 M,匯入的時候會耗費太長的時間,那就讓人頭痛了。所以我們推薦大家把原資料庫匯出,然後匯入到新的站點。
1 、匯出原部落格中的資料
開啟 phpMyAdmin,匯出原部落格中的資料為.sql 檔案,資料表如下:
- wp_commentmeta
- wp_comments
- wp_links
- wp_options
- wp_postmeta
- wp_posts
- wp_terms
- wp_term_relationships
- wp_term_taxonomy
- wp_usermeta
- wp_users
a 、用文字編輯器開啟匯出的 .sql 檔案,使用全域性替換功能將其中的」wp_」 替換為」wp_2_」(2 為新站點的 ID,如果 ID 是 3,就寫成 wp_3_),替換並儲存;
b 、再將 「wp-content/uploads」 全域性替換為 「wp-content/uploads/sites/2」,把媒體檔案的路徑修改成網路路徑。
2 、匯入修改好的資料庫到 MU 資料庫中
現在開啟新站點的 phpMyAdmin,找到 MU 資料庫,你會發現資料庫中有 「wp_」 和 「wp_2_」 兩個表字首的資料庫,把字首為 「wp_2_」 所有的資料刪除或重新命名,然後匯入剛才修改過的 .sql 檔案。
3 、修正 「siteurl」 與 「home」 中的地址 (在沒有繫結原域名之前)
在 MU 新建立的站點,域名是 newname.Domainname.com 這樣的二級域名,我們需要把原域名修改成 MU 中新新增的二級域名,開啟 wp_options 資料表,找到名稱為 「siteurl」 與 「home」 兩個資料,修改其中的值即可。
有些朋友在使用的過程中發現使用原部落格中的 wp_options 資料會出現問題,如果有問題就不匯出原部落格中的 wp_options 資料,使用新站點 wp_options 資料,然後再設定下新站點。
在後面我們會講到如果繫結域名,如果繫結了原域名而且使用原部落格中的 wp_options 資料,我們就不需要修改這一步了!
4 、修正文章作者
因為修改過的資料庫表字首為 「wp_2_」,與之前的是不一樣,所以我們需要在 MU 中把新站點中所有的文章作者指定給 MU 管理員,可以在 phpMyAdmin 中的 SQL 中執行以下程式碼:
- UPDATE wp_2_posts SET post_author = 1
如果新站點的有多個作者,那只有在後臺——文章列表中選擇同一作者的文章進行批次修改了。
5 、修正資料庫中的 meta_key
我們在前面修改表字首是全域性替換,我們也把一些不需要修改成 「wp_2_」 這樣的資料給修改好,如資料庫表 wp_2_postmeta 和 wp_2_usermeta 中的一些 meta_key,基本上是以 「_wp_」 這樣的資料表,所以我們需要在替換完成後將其改回原來的值,仍以部落格 ID 為 2 作為例子,在 MU 的資料庫中使用下面的 SQL 語句進行修正:
- UPDATE wp_2_postmeta SET meta_key = '_wp_2_attachment_metadata' WHERE meta_key = '_wp_attachment_metadata'
- UPDATE wp_2_usermeta SET meta_key = '_wp_2_attached_file' WHERE meta_key = '_wp_attached_file'
可能不止這兩處地方,根據實際情況再修改回來。
到這裡檔案與資料的轉移基本完成,前往 「管理網路」 後臺中將外掛與主題啟用,新的站點就可以使用了。
一個程式包,一個管理面板,一個資料庫,輕鬆快捷地建立 N 多個站點,使用
WordPress MU
省去了很多重複的工作,節省了空間,管理方便,實在是大讚,筆者是相當的喜歡,相信有多個站點的你也一定會喜歡。