网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 大学论文导航 设计下载 最新论文 下载排行 原创论文 论文源代码
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > 网络知识 > 正文

WordPress无缝整合Google自定义搜索框

来源:http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 14/06/29

网学网为广大网友收集整理了,WordPress无缝整合Google自定义搜索框,希望对大家有所帮助!

   今天我给大家分享的是无缝整合Google自定义搜索框的技巧。早在08年Denis就写过一篇整合Google自定义搜索到WordPress中的教程,可以达到强化搜索、减轻数据库读取和赚取利润的各种好处。其中的第6步是用Google 的搜索框代替主题本身的搜索框,但是现在使用国外主题和付费主题的朋友越来越多了,这类主题都有一共同效果——界面UI棒!拥有精美搜索框的主题也不在少数,如果让你放弃原先精美的搜索框,而用 Google 那简单单一的搜索框是不是会有点不舍呢?

  不用担心,接下来 Packy 教你一步步无缝整合Google 自定义搜索框,可以在不修改原搜索框的前提下使用 Google 强大的自定义搜索功能。

  如果你是第一次整合Google自定义搜索,可以按照我的步骤来;如果你对代码较了解,可以根据你的需要选择性的看。

  第一步:注册并获取 Google 自定义搜索代码

  整合 Google 自定义搜索之前肯定必须要先让 Google 为你服务,通过访问http://www.google.com/cse/ 创建你的搜索引擎。创建完毕后进入“外观”面板,选择“全宽”的布局模式。保存后进入“获取代码”,获得你的 Google 自定义搜索代码:

<!-- Put the following javascript before the closing </head> tag. -->
<script>
(function() {
var cx = ''015818537936328944739:nkbsvpppu5k'';
var gcse = document.createElement(''script''); gcse.type = ''text/javascript''; gcse.async = true;
gcse.src = (document.location.protocol == ''https:'' ? ''https:'' : ''http:'') +
''//www.google.com/cse/cse.js?cx='' + cx;
var s = document.getElementsByTagName(''script'')[0]; s.parentNode.insertBefore(gcse, s);
})();
</script>

<!-- Place this tag where you want both of the search box and the search results to render -->
<gcse:search></gcse:search>

  先保留着这些代码,不用理他,继续第二步

  第二步:创建搜索结果页

  为了让搜索结果在博客内部显示,我们需要在 WordPress 中创建一个新的页面,用来显示搜索的搜索结果。我们在本地新建一个文件,命名为 search.php,文件内容复制下面的即可:

<?php
/*
Template Name: search
*/
?>
<?php get_header(); ?>
<div id="cse" style="width: 100%;">Loading</div>
<script src="http://www.google.com.hk/jsapi" type="text/javascript"></script>
<script type="text/javascript">
google.load(''search'', ''1'', {language : ''zh-CN''});
google.setOnLoadCallback(function(){
var customSearchControl = new google.search.CustomSearchControl(''你的Google自定义搜索ID'');
customSearchControl.setResultSetSize(google.search.Search.FILTERED_CSE_RESULTSET);
customSearchControl.draw(''cse'');
});
</script>
<link rel="stylesheet" href="http://www.google.com.hk/cse/style/look/shiny.css" type="text/css" />
<?php get_footer(); ?>

  其中将“你的 Google 自定义搜索 ID”替换为 Google 给你的“搜索引擎的唯一 ID”,可以在控制面板的基本信息内获取。

  保存后将 search.php 上传至你的主题根目录下。

  最后在你博客的后台 – 页面中新建页面,在页面属性的模版中找到 search 并选择,写好标题发布即可。

  第三步:修改当前主题的搜索提交的表单

  这里算是最关键的一步啦,就是当用户点击你博客上任意页面的站内搜索按钮的时候,将用户引导到你刚刚创建的搜索结果页上。这里我们需要在主题文件夹中找到搜索框所在的文件,每个主题都不同,我用我在使用的一款主题来演示吧,找到类似以下的代码:

<form method="get" action="/search"?>
<input type="text" size="24" name="s" value="在wpzti.com中尽情搜索吧" class="textfield" style="float:left" onblur="if (this.value == ”) {this.value = ‘在wpzti.com中尽情搜索吧’;}" onfocus="if (this.value != ”) {this.value = ”;}"/?>
<input class="submitSearch" type="submit" value="Search"?>?</input?>
</form?>

  其中我们需要修改的地方大致如下:

method=”get”
action=”/search”
还有文本框 name=”q”

  *action 的地址可以根据你自己固定链接的方式来修改,只要保证能访问到我们刚新建的页面就行;不管你原先主题搜索框的 name 等于什么,都将引号内的字母改成 q。

  第四步:初始化搜索关键字

  这是无缝整合 Google 自定义搜索框的最后一步,完成他你就大功告成了哦。这一步我们要做的是:从 URL 中提取浏览者搜索的关键词,然后调用 Google API 进行搜索。听起来很复杂?无需理解,简单的跟着做就可以了:

  打开我们刚才新建的 search.php,在 Google 的代码

customSearchControl.draw(‘cse’, options); 

  后插入以下代码:

var match = location.search.match(/q=([^&]*)(&|$)/);
if(match && match[1]){
var search = decodeURIComponent(match[1]);
customSearchControl.execute(search);
}

  大功告成啦,从此以后你依旧可以使用主题原始的搜索框而享受 Google 自定义搜索带来的好处。

Wordpress下载:

WordPress v3.5.2 简体中文版下载

界面预览

  • 软件大小:6.28MB
  • 软件类别:国外软件 | 博客系统
  • 软件语言:简体中文
  • 运行环境:PHP/Mysql
  • 软件授权:免费版
  • 更新时间:2013-7-24 16:05:30
  • 相关链接:Home Page

WordPress v3.9 英文版下载

界面预览

  • 软件大小:6.05MB
  • 软件类别:国外软件 | 博客系统
  • 软件语言:英文
  • 运行环境:PHP/MySQL
  • 软件授权:开源软件
  • 更新时间:2014-4-17 9:56:31
  • 相关链接:Home Page

本文转自:http://fairyfish.net/article/google-cse-for-wordpress/

网学推荐

免费论文

原创论文

设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号