今天,有点时间,就顺便总结一下织梦的搜索功能;在这里(非牛人,只瞎说)就分三步吧:页面搜索区域;搜索模板;搜索页面列表设置;(因为为人懒,所以只上代码以及必要说明)
一、页面搜索区域
<form action="/plus/search.php">
<a class="tel ask" href="tel:07713366999"><span class="ask-inner">电话咨询</span></a>
<input type="text" name="keyword" value="站内搜索..." class="keyword" οnfοcus="if(this.value==defaultValue){this.value='';}" οnblur="if(this.value==''){this.value=defaultValue;}"/>
<span class="search"><input type="submit" class="search-btn" value="搜索" /></span>
</form>
切记:表单action动作属性,搜索框name属性为keyword;
二、搜索模板
1、改页面标题为搜索"{dede:global name='keyword'/}"结果_{dede:global.cfg_webname/};
2、添加搜索到的文章列表
{dede:list pagesize='5'}
<li>
<h1><a href="[field:arcurl/]" >[field:title/]</a></h1>
<p>[field:description function=" subSearchText(@me,50)"/]...<a href="[field:arcurl/]">[详细]</a></p>
</li>
{/dede:list}
三、 搜索页面列表设置
1、描述信息截取问题
// 处理搜索页面描述信息截取问题
// stripos()_返回字符串在另一字符串中第一次出现的位置(大小写不敏感);
function subSearchText($val,$length) {
// 取关键字
$from = stripos($val,"<font color='red'>",0) + 18;
$to = stripos($val,"</font>",0);
$keyword = substr($val,$from,$to-$from);
$replace = "<font color='red'>".$keyword."</font>";
// html2text
$strtext = Html2Text($val);
// 截取字串
$substr = cn_substr($strtext, $length);
// 添加样式
$substyle = str_ireplace(' '.$keyword.' ',$replace,$substr,$count);
return $substyle;
}
2、设置文章列表条数
在/plus/search.php中查找$pagesize = (isset($pagesize) && is_numeric($pagesize)) ? $pagesize : 5;语句,
并把$pagesiz改为需要的条数就好;