phpcms v9 內(nèi)容搜索不完全顯示解決方法
由于 Phpcms 是國(guó)內(nèi)開(kāi)源的的PHP網(wǎng)站內(nèi)容管理系統(tǒng),使用量非常大,最近有不少站長(zhǎng)和我一樣發(fā)現(xiàn) phpcms v9 在內(nèi)容搜索的時(shí)候出現(xiàn)bug,明明數(shù)據(jù)庫(kù)里有多條記錄,顯示確只有一條.
這個(gè)bug原來(lái)是這個(gè)程序在開(kāi)發(fā)的時(shí)候沒(méi)有考慮周全,在升級(jí)后把原來(lái)的搜索功能原有的搜索分詞進(jìn)行了整合和改動(dòng)導(dǎo)致的,所以當(dāng)我們使用搜索功能的時(shí)候有的就搜不到或者搜索不全,這樣就不能從數(shù)據(jù)庫(kù)中調(diào)出在前臺(tái)顯示出來(lái)了.
解決的辦法如下:
首先連接 FTP到空間,進(jìn)入到phpcms/modules/search/index.php文件,找到以下代碼:
if (!emptyempty($segment_q)) {
$sql = “`siteid`= ‘$siteid’ AND `typeid` = ‘$typeid’ $sql_time AND MATCH (`data`) AGAINST (‘$segment_q’ IN BOOLEAN MODE)”;
} else {
$sql = “`siteid`= ‘$siteid’ AND `typeid` = ‘$typeid’ $sql_time AND `data` like ‘%$q%’”;
}
把以上代碼替換為:
$sql = “`siteid`= ‘$siteid’ AND `typeid` = ‘$typeid’ $sql_time AND `data` like ‘%$q%’”;
這段代碼就是去掉了判斷,不管是否是空都會(huì)從數(shù)據(jù)庫(kù)中取出在前臺(tái)顯示出來(lái),這樣就不會(huì)存在分詞搜索不到的情況了.
會(huì)員登錄
賬號(hào)登錄還沒(méi)有賬號(hào)?立即注冊(cè)