新聞中心
phpcms標簽偽靜態(tài)之后中文鏈接亂碼了怎么辦
作者 / 無憂主機 時間 2016-01-12 09:44:28
有些開源程序在創(chuàng)建欄目的時候會使用中文字符,這樣在后臺生成首頁之后鏈接也會含有中文的。例如最典型的就是wordpresss這款開源程序了,在網(wǎng)站后臺創(chuàng)建首頁導航欄的時候使用的是中文,在首頁點擊導航欄在鏈接地址中出現(xiàn)的就有中文的URL。然后有的程序會自動轉碼,把含有中文字符的轉成英文,這樣做的好處就是不會亂碼。今天小編遇到了一款比較特殊的phpcms開源程序在php免備案空間中出現(xiàn)類似的問題,可是這款程序在做好了偽靜態(tài)之后不會自動轉碼,tag標簽偽靜態(tài)之后URL就會亂碼了,這可怎么辦呢?小編實在無奈之下只能去官方論壇求助了,通過調試分析找到了處理的方法,下面小編就來詳細說下處理方法吧。 解決方法如下: 首先按照以下目錄文件找到phpcms/modules/content/tag.php文件,并使用高級編輯器打開。找到以下代碼:
$infos=$keyword_data_db->listinfo($where, 'idDESC',$page,$pagesize,"","9",$urlrule,array("tag"=>urlencode($tag)));將以上代碼中的:
'tag'=>urlencode($tag)))修改成:
'tag'=>$tag))然后就是修改內(nèi)容頁或者列表頁,首頁的{APP_PATH}tag-{urlencode($keyword)}-1.html 將:
urlencode($keyword)修改為:
$keyword修改好了以上兩處后保存上傳覆蓋之前的目錄文件。然后再登陸網(wǎng)站的后臺更新下系統(tǒng)的緩存再返回首頁 tag標簽就中文顯示了。小編下面再溫馨提示下:若標簽為英文,是沒有問題的;如果標簽是中文的話,點擊標簽時會呈現(xiàn)找不到此關鍵字的提示,那么該怎么辦呢?解決方法如下:找到phpcms/modules/content/tag.php 文件,使用高級編輯器打開 找到:
$tag = safe_replace(addslashes($_GET['tag']));在其正下方添加
$tag = iconv("utf-8","gb2312",$tag); //轉編碼這樣就行了,如果還是不行的話,只要把括號中的gb2312和utf8調換下順序就OK了。以上步驟就是小編總結的關于phpcmstag標簽偽靜態(tài)之后中文鏈接亂碼了的處理方法了。 無憂主機相關文章推薦閱讀: PHPCMS程序刪除文章后數(shù)據(jù)庫中仍有保存的文章中的關鍵詞怎么辦? PHPCMS程序如何取消后臺登陸后的提示消息呢 PHPCMS程序如何添加一個二維碼生成函數(shù)的方法
本文地址:http://www.gle-technology.com/phpcms/21371.html