Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
最近因為友情支援的關係,將這個網站從原本在 Linode 的主機,改為台灣速連 (推廣連結)。
既然連主機都搬遷了,就趁這時候把一些網站也重新調整一下,最重要的一項工作,就是將原本的多站網路架構,調整回單一網站。
內容目錄
這個步驟怎麼聽起來好像很熟悉?沒錯,這個步驟其實跟一般搬遷網站的流程一模一樣。唯一的差異在於多站網路會用獨立的資料表,儲存個別網站的資料。所以實際上需要注意的是步驟二與步驟三。
要執行這個步驟,你需要有資料庫的存取權限。一般來說,大多數的共享主機都會提供 phpMyAdmin 這款輔助工具,協助網站管理員透過圖形介面來存取資料庫。以下的步驟便是透過 phpMyAdmin 來執行。
進入 phpMyAdmin 後,會發現除了預設的資料表前綴 wp_ 外,有些資料表出現了 wp_2、wp_3 等編號。這些就是個別網站的 Site ID,可以在多站網路的主控制台檢視。
接著,點選上方選單中的 [Export],準備匯出資料表。這邊記得選取 [Custom],這樣才能選取個別資料表。這時,如果要匯出的是主要網站,那麼只要勾選全部的 wp_xxxx 資料表並匯出就可以了;而如果是其他子網站,就根據網站 ID (Site ID) 去勾選對應的資料表。
由於多站網路的 wp-config.php 檔案中,會定義下列的常數,所以在這個步驟要先記得把 wp-config.php 的這些常數刪除。
<?php /** * 啟用多網誌站台與網誌網路功能 * * 若 WP_ALLOW_MULTISITE 值為 true 可啟用多網誌站台功能。 */ define('WP_ALLOW_MULTISITE', true); define('MULTISITE', true); define('SUBDOMAIN_INSTALL', true); define('DOMAIN_CURRENT_SITE', 'example.com'); define('PATH_CURRENT_SITE', '/'); define('SITE_ID_CURRENT_SITE', 1); define('BLOG_ID_CURRENT_SITE', 1);
多站網路與一般個別網站的外掛與佈景主題都是存放在 wp-content 底下,這裡並不需要做另外的處理。
但如果備份下來的檔案有 wp-content/cache,可以先刪除該目錄,這是原本網站製作的快取內容。
在開始匯入之前,需要記得將個別網站的媒體重新整理過。以網站 ID 為 2 的網站來說,就要將 wp-content/uploads/sites/{{網站 ID}} 目錄下的資料,移動到 uploads 底下。
當然,也可以選擇不移動這個資料夾,把其他的媒體內容清空。這是因為資料庫當中的路徑,仍然對應到 http://example.com/wp-content/uploads/sites/2 底下。這裡為了日後好管理,所以選擇將資料整理回 uploads 的資料夾中。
利用任何文字編輯器 (記事本、Notepad++、Visual Studio Code、Sublime 等) 開啟稍早備份出來的資料庫。將資料庫名稱改為新資料庫的名稱 (例如:hycdba → hyccom)、資料表前綴改為新的資料表前綴 (例如:voc_ → hyc_)
如果在上一個步驟將 wp-content/uploads/sites/{{網站 ID}} 的內容移動到 wp-content/uploads 下,這邊記得也要搜尋並取代。
利用 FTP,或是主機商提供的管理介面 (cPanel 或 Plesk),將上一個步驟整理過的資料,上傳至網站根目錄中 (通常稱為 htdocs 或是 public_html)。
於新網站的 phpMyAdmin 中,選取目標資料庫,並將整理過的 SQL 檔案匯入。
匯入前,如果資料庫中已經有其他同名的資料表,記得先備份後,將原有的資料表全選後清除 (DROP)。
等到資料表匯入完畢後,記得將網域指向新的主機,接著就可以試著重新登入回控制台首頁。登入後,確認沒有右上角的 [多站網路管理中心] 選項,代表搬遷順利完成了。
這次的搬遷,我是在新的主機先透過 Webinoly 建立了新的 WordPress 網站後,才將舊網站的資料搬過來。因此有下列幾點需要額外注意: