源于生活

标题: 把DEDECMS搜索改为自己多功能搜索的技巧 [打印本页]

作者: kevin-ying    时间: 2014-2-11 23:36
标题: 把DEDECMS搜索改为自己多功能搜索的技巧
  1. <form name=bf onSubmit="bottomForm();return false;">  
  2.    <script>  
  3. function bottomForm(){  
  4. var $=document.bf.key.value;  
  5. if(document.bf.sto[0].checked)window.open("./plus/search.php?kwtype=0&keyword="+$,"a1");  
  6. if(document.bf.sto[1].checked)window.open("http://www.baidu.com/s?q1="+"&q6=blog.sina.com.cn","a2");  
  7. if(document.bf.sto[2].checked)window.open("http://www.google.com/search?hl=zh-CN&q="+"&as_sitesearch=blog.sina.com.cn","a3");  
  8. // if(document.bf.sto[3].checked)window.open("http://www.gougou.com/search?id=1&search="+$,"a4");  
  9. // if(document.bf.sto[4].checked)window.open("http://map.baidu.com/m?word="+$,"a5");  
  10. // if(document.bf.sto[5].checked)window.open("http://bk.baidu.com/?kw="+"&submit=search","a6");  
  11. return false}  
  12. </script>  <div class="form">  
  13. <h4>搜索</h4>  
  14. <!-- <input name="key" class="search-keyword" value="(输入搜索内容……)"> -->  
  15. <input name="key" class="search-keyword" value="(输入搜索内容……)" onfocus="if(this.value=='(输入搜索内容……)'){this.value='';}"  onblur="if(this.value==''){this.value='(输入搜索内容……)';}">  
  16. <input name=sto type=radio value="0" checked=true>本站内  
  17. <input name=sto type=radio value="1"><a href="http://www.baidu.com">百度</a>  
  18. <input name=sto type=radio value="2"><a href="http://www.google.cn">Google</a>  
  19. <!--  
  20. <input name=sto type=radio value="3"><a href="http://www.gougou.com">狗狗</a>  
  21. <input name=sto type=radio value="4"><a href="http://map.baidu.com">地图</a>  
  22. <input name=sto type=radio value="5"><a href="http://baike.baidu.com">百科</a>  
  23. -->  
  24. <button type="submit" class="search-submit">搜索</button>  
  25. </div>  
  26. </form>
复制代码
其中,“blog.sina.com.cn” 换成你自己的独立域名。

原来的以下这段,似乎是用不上了,本人这样屏蔽掉:
  1. <!--
  2.         <div class="tags">
  3.           <h4>热门标签:</h4>
  4.           <ul>
  5.           {dede:tag row='10' getall='1' sort='month'}
  6.             <li><a href='[field:link/]'>[field:tag /]</a></li>
  7.           {/dede:tag}
  8.           </ul>
  9.         </div>
  10. -->
复制代码






作者: kevin-ying    时间: 2014-2-12 01:31
实现DedeCMS "puls/advancedsearch.php"搜索结果页显示自定义字段


关于在搜索结果页中显示自字义字段的方法

如果通过“内容模型管理 > 自定义搜索”搜索的结果页如果要显示自定义字段,可使用以下方法:

1。修改puls/advancedsearch.php文件,找到

  1. $query = "select arctype.* from $addontable addon
  2. left join cmsxx_arctype arctype on arctype.id=addon.typeid
  3. $where $orderby";
  4. } else {
  5. $query = "select main.id as aid,main.*,main.description as description1, type.*
  6. from $maintable main
  7. left join cmsxx_arctype type on type.id=main.typeid
  8. left join $addontable addon on addon.aid=main.id
  9. $where $orderby";<span style="line-height: 1.5;"> </span>
复制代码


在select后面增加"addon.*,"
修改后应该是

  1. $query = "select addon.*, arctype.* from $addontable addon
  2. left join cmsxx_arctype arctype on arctype.id=addon.typeid
  3. $where $orderby";
  4. } else {
  5. $query = "select addon.*,main.id as aid,main.*,main.description as description1, type.*
  6. from $maintable main
  7. left join cmsxx_arctype type on type.id=main.typeid
  8. left join $addontable addon on addon.aid=main.id
  9. $where $orderby";
复制代码


注意,有两个地方要加
显示结果要修改模板文件,在plus/advancedsearch.htm,{dede:datalist}中直接调用{dede:field.字段名称/} 就好了。


作者: kevin-ying    时间: 2014-2-15 11:21
advancedsearch.php
复制代码
  1. $query = "select main.id as aid,main.*,main.description as description1, type.*
  2.     from $maintable main
  3.     left join #@__arctype type on type.id=main.typeid
  4.     left join $addontable addon on addon.aid=main.id
  5.     $where  $orderby";
复制代码





  1. $query = "select main.id as aid,main.*,main.description as description1, type.* ,addon.*
  2.     from $maintable main
  3.     left join #@__arctype type on type.id=main.typeid
  4.     left join $addontable addon on addon.aid=main.id
  5.     $where  $orderby";
复制代码

主要修改未知是在:"$query = "select main.id as aid,main.*,main.description as description1, type.*"增加了 ",addon.*"
考虑性能,如果没必要就不要搜索这些字段了


作者: kevin-ying    时间: 2014-2-20 11:39
DedeCMS 搜索结果每页只显示10条 如何更改显示条数?

 DedeCMS搜索结果默认只显示了10条搜索结果,修改“search.htm”模板中的“pagesize='10'”但是无效。
  找到plus/search.php文件,第5行,如下代码:

  1. $pagesize = (isset($pagesize) && is_numeric($pagesize)) ? $pagesize : 10;
复制代码


  其中的10,就是显示出来的条数,将它改成你要显示出来的条数即可。




欢迎光临 源于生活 (http://bbs.vingoo.info/) Powered by Discuz! X3.1