blog banner

WordPress雜症(2):Windows系統下中文網址無法正確連結

解決了固定網址的問題後,原本以為沒事了,沒想到還有Windows最擾人的中文編碼問題,也許你會有以下困擾:只要新增一篇標題是用中文或非英語系的文章、頁面,就會顯示找不到符合的頁面-404,如下圖

這是因為實際上中文網址會以UTF-8 Encode 的方式呈現,比如本篇範例文章的標題「中文網址」會是以「%e4%b8%ad%e6%96%87%e7%b6%b2%e5%9d%80」這種方式呈現,最直接的解決辦法就是利用php的函式urldecode()來處理,以下是修改方式:

到Wordpress的安裝目錄下,找到index.php,用文字編輯器開啟編輯,在”<?php”底下第一行加入下面這一行程式:

$_SERVER['REQUEST_URI'] = urldecode($_SERVER['REQUEST_URI']);

如下圖

回到剛剛的「中文網址」文章,重新整理後就可以正常顯示了。
這個方法的缺點是,要有檔案的修改權限,另外,如果更新Wordpress主程式就要重新再改一次。

如果還是無法解決,建議用手動的方式避開中文固定網址,進入到編輯畫面,在右邊可以看到 Permalink / 固定網址 / 永久網址 這個項目,把URL的欄位修改成英文+數字的格式,然後重新發佈即可。

真的萬萬不得解,最下下策的辦法就是到管裡後台>設定>固定網址 把 常見設定 的選項改為 一般 ,這樣就不會再出現找不到頁面的問題,不過缺點就是網址不是那麼人性化,但總比找不到網頁-404好多了,是吧?