替换WordPress默认搜索为百度站内搜索(知更鸟主题可照搬)

时间:2022-05-05
本文章向大家介绍替换WordPress默认搜索为百度站内搜索(知更鸟主题可照搬),主要内容包括一、准备工作、二、折腾主题、三、附加部分、四、最终效果、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。

今天,中国博客联盟 QQ 群里的【58 说】博友提到百度站长平台推出绿色收录通道了。连忙登陆站长平台看了下,意外的发现张戈博客已开通了站内搜索功能。之前确实给管理员发邮件申请过,不过一直没有邮件回复,就放一边没管了。

先打开了【绿色通道】的按钮看了看:

以张戈的经验来看,这个地址应该填写 sitemap.xml 或者 html 版本的网站地图为最佳!

而张戈博客之前已开通并提交了 sitemap.xml 文件,于是选择填写了 html 版本的博客地图 url:

http://zhangge.net/blogmap

目前处于审核状态:

百度一向以反应迟钝出名,所以什么时候审核完成,咱们就没必要过于关注了。准备折腾一下期待已久的百度站内搜索功能:

可以发现有个【搜索框样式】,进去自定义设置一番,会获得一段代码,这时候只要把代码贴到侧边栏的文本框应该就能用了吧?不过,此文并非分享如何将百度站内搜索添加到博客的侧边栏,所以想添加到侧边栏的朋友,请看知更鸟作者鸟哥很久以前的相关教程:《将百度站内搜索添加到侧边小工具中》,理论上适用于各种 WordPress。


下面说下知更鸟主题的博客,如何将上方博客导航里面内嵌的搜索换成百度站内搜索:

一、准备工作

温馨提示:建议在博客的百度收录比较完整的时候,再使用此功能,否则搜索结果将远远小于实际可搜索内容,甚至空白!因为站内搜索的结果均来自百度收录!张戈大胆猜测,用了百度站内搜索,百度收录的速度应该会有所提升,因为这其中还涉及到了额外数据的抓取!

做这项工作之前,咱们还有一个重要的准备工作:

①、CNAME 一个二级域名到 zhannei.baidu.com:

②、将这个二级域名添加为百度站内搜索的【搜索域名】:

③、确认这个二级域名可以正常访问到百度站内搜索,比如:http://so.zhangge.net

到这里,准备工作就已经做好了(其他站内搜索选项,自行按照提示设置即可)!

二、折腾主题

①、我们先看下知更鸟主题的主题选项:

发现可以选择 WP 默认搜索或者 Google 搜索,谷姐最近来例假了,咱也就别打扰她了,还是用百度吧!

②、再打开主题模板中的 header.php,可以找到这样一段代码:

可知,当选择为 Google 搜索时,调用的就是 includes/g_search.php,所以,今天的折腾对象就是它了!

③、打开 includes/g_search.php,瞄了瞄身体构造:

对比如下的百度站内搜索的链接结构:

http://so.zhangge.net/cse/search?s=11196058821421648414&q=搜索词

④、依葫芦画瓢改装后的代码:

<form action="<?php echo get_option('swt_search_link'); ?>" target="_blank" id="cse-search-box">
    <div>
    <input type="hidden" name="s" value="<?php echo get_option('swt_search_ID'); ?>" />
    <input type="text" onclick="this.value='';"  name="q" id="q" class="swap_value" />
    <input type="image" src="<?php bloginfo('template_directory'); ?>/images/go.gif" id="go" alt="Search" title="搜索" />
    </div>
</form>

将 includes/g_search.php 内容替换为以上代码,然后参考上图知更鸟主题选项中的【搜索设置】,修改成自己的百度站内搜索 ID 和地址即可。

三、附加部分

①、如果不是知更鸟主题,以上代码可直接如下写死:

<form action="http://so.zhangge.net/cse/search" target="_blank" id="cse-search-box">
    <div>
    <input type="hidden" name="s" value="11196058821421648414" />
    <input type="text" onclick="this.value='';"  name="q" id="q" class="swap_value" />
    <input type="image" src="<?php bloginfo('template_directory'); ?>/images/go.gif" id="go" alt="Search" title="搜索" />
    </div>
</form>

将代码中的第 1、2 行修改成你的站内搜索地址及 ID 即可,至于怎么用,放到哪,张戈就不管了,自己看着办吧。

②、在站内搜搜结果中插入百度广告

前提必须已申请了百度联盟,然后去百度联盟创建 3 个广告位,再将广告 ID 插入到站内搜索的【获得收入】选项中即可,具体操作可参看下图文字说明:

③、还未开通站内搜索的博客,可参考下图发一封邮件至百度站长平台管理员zhanzhangpingtai@baidu.com:

至于能否开通,就看管理员心情了。。。。

四、最终效果

在知更鸟主题导航的内嵌搜索框中输入任意内容,回车即可:

虽然样式无法自定义,但总体还算满意!文章写的有点流水账,有兴趣的可以参考操作试试。至于牵扯到的相关 CSS 样式神马的,请自行调整,就不赘述了,毕竟折腾 WP 还是要有那么一点功底的。