Re: [ WP ] 設定網域後還是顯示ip該如何改?

作者: hit1205 (幫你把勇氣裝滿)   2013-10-20 23:19:28
已確認是因為 WordPress 的網誌網址設定仍為 IP 所致。
不過原 po 使用的是多網誌 WP,所以無法由 [設定 > 一般] 更改網址。
想說可能有其他人也會遇到類似問題,所以用回文的方式回答 =)
多網誌 WP 要改網址的話,首先要更改你主機上的 wp-config.php 這個檔案,
裡頭會有當初指定的 IP(這邊的 IP 是舉例):
define( 'DOMAIN_CURRENT_SITE', '1.2.3.4' );
請將這裡的 IP,換成自己的新網址。
(例如 1234.com,不須加上斜線和 http 字樣)
接下來的部分,由於多網誌 WP 無法由管理區改網址,
所以必須 直接更改資料庫。
不過 WP 還算貼心,他其實偷偷藏了一個進階的設定頁面,
可以直接進去修改不在管理區裡出現的設定值(用瀏覽器打開就可以了):
http://你的網址網址/wp-admin/options.php
然後你會看到密密麻麻的設定,他們都是按照英文字母排列的。
請找到以下兩個設定(這兩個設定不是緊鄰的,要找一下):
home
siteurl
他們右邊的欄位裡,應該可以看到原本的 IP,請將他們改成網址即可。
這裡就需要加 http 了,例如這樣:
http://images.plurk.com/hnhD-6H4AdIwG29CLmLACTTNweu.jpg
改完以後,捲到頁面最底下,有個 [儲存變更],按下去就改完囉 =)
(如果你已經在 WP 站台內開了多個網誌,則 每個網誌
都要重複做這個動作,才會全都變成新網址)
接著,很不幸地,還是必須要進入資料庫改東西 XD
如果你的主機有 phpMyAdmin 之類可以管理資料庫的東西,就用他吧!
沒有的話,我是推薦這個: http://www.adminer.org/
Adminer 3.7.1 (.php, 294 kB) << 請下載這一個
下載後會得到一個 adminer-3.7.1.php 檔案,把他傳到主機上,
然後透過 http://你的網址/adminer-3.7.1.php 就可以直接管理資料庫了,
只要傳這麼一個檔案真的很方便,而且還有中文介面 XD
好的,接著無論你是用 Adminer 還是 phpMyAdmin,
請進入 blog_site 資料表,會看到一筆紀錄的 domain 欄位寫著你原本的 IP,
請編輯他,改成你的網址(1234.com 這種形式,不用加斜線和 http)
接著進入 blog_sitemeta 資料表,找裡頭一筆 meta_key 等於 siteurl 的紀錄,
把他的 meta_value 欄位改成你的網址(http://1234.com/ 這種形式)
以上,這樣就大功告成了。
另外比較麻煩的事有兩件:
1. 每篇網誌文章的 "固定網址" 依然是 IP
2. 網誌內文的超連結,如果有連到其他文章的話,也仍然是連到 IP
要改這兩個東西,可以採用批次取代字串的 SQL 語法,
取代 wp_posts 資料表裡頭的 post_content (文章內文) 及 guid (固定網址) 欄位:
UPDATE wp_posts SET post_content=REPLACE(post_content,
'http://1.2.3.4', 'http://1234.com')
UPDATE wp_posts SET guid=REPLACE(guid,
'http://1.2.3.4', 'http://1234.com')
使用以上語法前,最好備份一下資料庫裡的內容,以免寫錯語法出意外 XD
Adminer 和 phpMyAdmin 都有 "匯出" 資料的功能。
另外,如果你的 WP 站台內已經有多個網誌的話,
那 每一個網誌的 posts 資料表,都要下一樣的 SQL 語法。
每個網誌的 posts 表名稱依序如下:
wp_posts
wp_2_posts
wp_3_posts
以此類推 =) 當然下 SQL 語法的時候也要記得把 wp_posts 換成對應的資料表。
以上。
作者: CILOHAKROW (士羅哈克)   0000-00-00 00:00:00
再次感謝hit1205大大的協助,再次感謝!
作者: pSeRiC ( )   0000-00-00 00:00:00
大推!
作者: hit1205 (幫你把勇氣裝滿)   0000-00-00 00:00:00
再補充一下,options.php 裡的設定其實就是 wp_options裡的設定 XD (第二個網誌就是 wp_2_options)所以如果會改資料庫的話也可以直接進資料表改siteurl,home

Links booklink

Contact Us: admin [ a t ] ucptt.com