大多數人在使用 WordPress 搭建網站時,都會把程序核心文件上傳到網站的根目錄。但是有一些網站,要在根目錄放一些別的文件,例如一個圖片管理程序、一些 demo 和下載資源等等,文件一多目錄就變的非常亂。該怎麼保持文件的整潔呢?

WordPress 允許把核心放置到子目錄,而且網站文章的鏈接地址依然不變,這樣就可以解決這個問題。

把 WordPress 安裝到子目錄

首先來講解如何把全新的 WordPress 安裝到子目錄,如果你的網站已經開始運行,可以直接往下拉。

1 、首先準備好一個文件夾,用來存放程序文件。

2 、把程序文件上傳到準備好的文件夾,然後把 index.php 文件移動到根目錄,目錄結構類似於:

  • WordPress
    • wp-activate.php
    • wp-blog-header.php
    • ……
  • index.php

3 、編輯剛才移動到根目錄的 index.php 文件,修改:

1

require(dirname(__FILE__).'/wp-blog-header.php');

為存放核心文件的目錄:

1

require(dirname(__FILE__).'/WordPress/wp-blog-header.php');

4 、使用瀏覽器進入你的網站,正常的安裝 WordPress 程序。

5 、安裝成功之後登錄後台,進入 「設置」→「常規」,修改 「站點地址 (URL)」 為主域名:

6 、到此結束;現在你的網站地址依舊是:http://www.example.com;但後台地址變更為:http://www.example.com/WordPress/wp-admin/。

把 WordPress 轉移到子目錄

如果你的網站已經開始運行,想把程序核心文件從根目錄轉移到子目錄裏,那麼上邊的方法需要做一些改動。

1 、首先準備好一個文件夾,用來存放程序文件。

2 、進入後台的 「設置」→「常規」,修改 「WordPress 地址 (URL)」 為核心文件存放的目錄;如果保存設置之後發現網站出現異常,請不要慌張,繼續向下操作。

3 、把 WordPress 移動到存放核心文件的文件夾,然後把 index.php 文件移動到根目錄,目錄結構類似於:

  • WordPress
    • wp-activate.php
    • wp-blog-header.php
    • wp-config.php
    • ……
  • index.php

4 、編輯剛才移動到根目錄的 index.php 文件,修改:

1

require(dirname(__FILE__).'/wp-blog-header.php');

為存放核心文件的目錄:

1

require(dirname(__FILE__).'/WordPress/wp-blog-header.php');

5 、如果操作正常,網站首頁此時已經可以正常訪問了。

6 、登錄後台,進入 「常規」→「固定鏈接」,什麼都不用更改,直接點擊頁面下方的 「保存設置」:

保存時,WordPress 會自動更新偽靜態規則。

7 、到此結束;現在你的網站地址依舊是:http://www.example.com;但後台地址變更為:http://www.example.com/WordPress/wp-admin/。

替換舊鏈接

雖然 WordPress 可以利用偽靜態來保證文章地址不變,但是原來在文章中插入的圖片卻被變更了地址,因為圖片文件都到子目錄去了。

要解決圖片的失效,需要替換文章中圖片的地址。可以使用下邊的 SQL 語句來批量替換:

1

UPDATEwp_postsSETpost_content=REPLACE(post_content,'http://www.example.com/wp-content/uploads/','http://www.example.com/WordPress/wp-content/uploads/');

注意修改 「wp_posts」 表名為自己的表前綴;同時要修改域名和目錄名為自己的。