一分钟为网站加入“站内搜索”功能

“站内搜索”是一个很受欢迎的功能,对于一个网站来说,提供这样的一个接口首先表明了一件事:我们想的是用户的便利。通过翻页条去遍历的确不是高效的方法。

如果网站的程序含有数据库,那么,很容易开发这样的搜索程序,而且可定制性是最高的,因为这将是针对网站的结构专门设计的。但是,大量的搜索提取数据库的记录会给网站带来不小的负担,所以并不是所有站长都愿意这样做。因此,借助于搜索引擎是一个不错的想法。因为搜索引擎已经保存了网站的页面,并且有很可靠的搜索能力。至于更新速度,往往不是问题,经常更新的网站或者被认为排名较前的网站,往往短时间内就可以搜到最新增加的页面。

如果留意我的搜索页面,会发现它已经被替换为Google的搜索,当然,因为加入了Adsense广告计划,所以我可以通过Adsense定制自己的搜索页面。如果你也是Adsense用户,也可以为自己的网站做一个合适的搜索框。

不如此,搜索引擎的搜索还是可以免费为我们所用的。基本上一分钟就可以搞定。

<form action="http://www.google.com/search" method="get">
<input name="sitesearch" value="www.winshome.com" type="hidden">
<input name="ie" value="UTF-8" type="hidden">
<input onfocus="if( this.value=='用 Google 搜索本站') {this.value=''};" size="25" name="q" id="query" value="用 Google 搜索本站" type="text">
<input name="Search" value="搜索" attr="value" type="submit">
<input name="oe" value="UTF-8" type="hidden">
<input name="hl" value="zh-CN" type="hidden">
</form>

效果如下:






这段代码使用Google搜索,已经建立了可以搜索本站(winshome)的接口了,放在需要的地方即可。提醒:如果你要使用,要记得改掉我的域名。其中的几个参数可以解释一下:
name="sitesearch" :告知 Google 你要搜索的指定网站或指定域名
name=" ie":告知 Google 发送搜索词的网页编码,预设值为"UTF-8"
* name ="oe" :告知 Google 显示搜索的网页编码,预设值为"UTF-8",由于现代大部分机器都能支持"UTF-8",因此你大概不需要调整次参数;
* name ="hl" :告知 Google 显示搜索的网页语言。"zh-CN"为简体中文,"zh-TW"为繁体中文,"en"为英文。

了解这些之后就可以很容易的知道如何修改代码了,如果结果出现了乱码,那多半是ie参数出了问题。

当然,Google只是搜索引擎之一,我们还可以使用百度或者yahoo。下面是相应的代码:

<form method="get" action="http://www.yahoo.com.cn/search">
<input type="text" name="p" size="21" maxlength="50">
<input type="hidden" name="ei" value="UTF-8"></input>
<input type="submit" value="yahoo提供站内搜索" name="submit">
<input type="hidden" name="vs" value="www.winshome.com">
<input type="hidden" name="source" value="site_search">
</form>

<form action="http://www.baidu.com/baidu">
<input type=text name=word>
<input type="submit" value="Baidu提供站内搜索">
<input name=tn type=hidden value="bds">
<input name=cl type=hidden value="3">
<input name=ct type=hidden value="2097152">
<input name=si type=hidden value="www.winshome.com">
</form>

上述代码实现的功能如下,试试看吧。(百度不识别utf-8,所以只能测试英文。没搞定,大家可以教教我)







前一篇:如何写一份好的工程师简历?后一篇:在线试用Windows Office 2007
发布:Debugger | 分类:代码收集 | 引用本文 | 发表评论 | 返回顶部
  • quote 5.Debugger Said at 2007-1-18 23:58:39:
  • http://winshome.com
  • Re conyee:不是你的问题,是不是选择使用Adsense的搜索?如果是,的确可以选择在本站显示结果,在后台有这样的选择,注意找一下。如果选择了这种方式,最后会出现两段代码,一段是显示搜索框,一段是显示结果。还有问题的话直接发信给我吧。
  • 回复该留言 | 直接评论 | 返回顶部

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。