phpcms實現全站搜索

若是製做的靜態頁面中有搜索功能,那麼使用phpcms進行替換怎麼替換呢?會不會越到不少的麻煩呢?接下來進行phpcms替換靜態頁面中的搜索功能。javascript

第一步:搜索頁面的form表單提交書寫,form表單怎麼寫就很少說了。php

1
2
3
4
5
6
7
8
< form name="search" id="" action="{APP_PATH}index.php" method="get" style="170px; display:inline-block; float:left">
            < h1 >產品搜索:</ h1 >< input name="q" value="請輸入查詢關鍵詞" type="text"  onclick="javascript:document.getElementById('q').value='';" id="q" style="width:186px; height:22px; border-right-width:0px; margin-top:7px;"/>< input id="siteid" type="hidden" value="1" name="siteid">< input type="submit" name="submit" id="submit" value="當即搜索" style="width:60px; height:26px; border:0px;
             <!--文字輸入框--> < br >        < input type="hidden" value="search" name="m">  <!--進行搜索的頁面-->
             < input type="hidden" value="index" name="c">   <!--搜完成功後返回的頁面-->
             < input type="hidden" value="init" name="a">
             < input id="typeid" type="hidden" value="1" name="typeid"> <!--typeid的類型-->
                                
</ form >

這樣就把想要查找的內容傳入index.php文件進行處理(index.php文件在modules/search/index.php)這個php文件就是對上面傳入的各種值進行判斷和處理html

如圖所示:java

 

第二步:這個form表單返回的頁面jquery

這個返回值的頁面不是欄目頁,也不是列表頁,也不是內容頁,是一個獨立的文件oop

(1)在你本身的模板之下創建一個search文件夾:路徑以下圖:url

不是在content文件裏創建,而是它的外面創建search文件夾spa

(2)search文件夾裏面有這麼幾個文件(本身的返回頁面進行拆分)code

將一個總體的靜態頁面像其餘的頁面同樣拆分爲這麼幾個部分:header、footer、index、list這麼4個頁面文件orm

(3)搜索結果的顯示

拆分就很少說了,知道phpcms的都會拆分,如今就是把index頁面和list頁面進行修改

index頁面是爲了搜索沒有內容的時候返回的頁面,這個頁面能夠本身設置,也可使用phpcms的默認頁面。

list頁面就是搜索的結果頁面了,提醒一下:這個頁面中除了要顯示搜索的內容外,其餘的內容就不要進行遍歷顯示了,由於這樣會把搜索的結果出錯了,不會顯示搜索的結果。

顯示搜索結果頁面的遍歷代碼以下:(把這個放到想要顯示的位置,樣式根據本身的樣式進行修改)

1
2
3
4
5
6
7
8
9
10
11
12
13
< ul >
       {loop $data $i $r}
                         
       {if $r['thumb']}  <!--搜索的結果的圖片-->
       < li >< b >< a href="{$r[url]}">< img src="{$r[thumb]}" /></ a ></ b > <!--搜索的結果圖片和路徑-->
       {/if} 
       < h3 >< a href="{$val[url]}">{$r[title]}</ a ></ h3 ></ li > <!--搜索結果的路徑和標題--> 
       {/loop}   
</ ul >
       {if empty($data)}未找到結果{/if}  <!--沒有找到時的提示-->
       < div id="pager" class="fy">
           {$pages}  <!--結果的分頁-->
       </ div >

注意:能夠進去phpcms的默認模板進行查看search的文件夾中的文件怎麼寫的,注意裏面有幾個js文件須要引進,不能不寫。  

1
2
3
4
{if $setting['suggestenable']}
< script type="text/javascript" src="{JS_PATH}jquery.suggest.js"></ script >
< script type="text/javascript" src="{JS_PATH}search_suggest.js"></ script >
{/if}

 

第三步:進行檢驗

查看結果的頁面是否有問題:

(1)搜索站裏面有「氣」的產品

(2)查看頁面是否是出來了(東西多的應該是有分頁的,還有搜索的關鍵字進行高亮顯示,這是樣式的修改)

 

 到此,phpcms的全站搜索的替換就結束了。主要的在search中全文件中不要出現循環顯示數據,這樣會和搜索的結果衝突;search文件不在content文件夾中。

相關文章
相關標籤/搜索