使用php显示搜索引擎来的关键词

 在访客从搜索引擎而来的第一个页面上显示访客搜索的关键词,根据这个关键词做出一些提高网站交互能力的改变,比如显示这个关键词相关的其它文章

以下是相关实现代码:
代码如下:
<?php
/*
Plugin Name: display-search-keywords
Plugin URI: http://www.imyxiao.com/1531.html
Description: 当访客通过搜索引擎来到你的博客,这个插件可以显示访客搜索的关键词
Version: 1.0
Author:<a href="http://www.imyxiao.com/">仰肖</a>
*/
function unescape($str) {
 $ret = '';
 $len = strlen($str);
 for ($i = 0; $i < $len; $i++) {
  if ($str[$i] == '%' && $str[$i +1] == 'u') {
   $val = hexdec(substr($str, $i +2, 4));
   if ($val < 0x7f)
    $ret .= chr($val);
   else
    if ($val < 0x800)
     $ret .= chr(0xc0 | ($val >> 6)) . chr(0x80 | ($val & 0x3f));
    else
     $ret .= chr(0xe0 | ($val >> 12)) . chr(0x80 | (($val >> 6) & 0x3f)) . chr(0x80 | ($val & 0x3f));
 
   $i += 5;
  } else
   if ($str[$i] == '%') {
    $ret .= urldecode(substr($str, $i, 3));
    $i += 2;
   } else
    $ret .= $str[$i];
 }
 return $ret;
}
function ls_get_delim($ref) {
 $search_engines = array (
  'google.com.hk' => 'q',
  'google.com.tw' => 'q',
  'go.google.com' => 'q',
  'google.com' => 'q',
  'blogsearch.google.com' => 'q',
  'cn.bing.com' => 'q',
  'one.cn.yahoo.com' => 'p',
  'baidu.com' => 'wd',
  'soso.com' => 'w',
  'youdao.com' => 'q',
  'sogou.com' => 'query'
 );
 $delim = false;
 // 判断
 if (isset ($search_engines[$ref])) {
  $delim = $search_engines[$ref];
 }
 return $delim;
}
 
function ls_get_refer() {
 // 判断前一页面的 URL 地址
 $queryString = $_GET['referer'];
 $queryString = unescape($queryString);
 if (!isset ($queryString) || ($queryString == ''))
  return false;
 $referer_info = parse_url($queryString);
 $referer = $referer_info['host'];
 //去除www.
 if (substr($referer, 0, 4) == 'www.')
  $referer = substr($referer, 4);
 return $referer;
}
 
function ls_getinfo($what) {
 $referer = ls_get_refer();
 if (!$referer)
  return false;
 $delimiter = ls_get_delim($referer);
 if ($delimiter) {
  $terms = ls_get_terms($delimiter);
  if ($what == 'isref' && $terms != '') {
   return true;
  }
  if ($what == 'terms') {
   echo $terms;
  }
 }
 return false;
}
 
function yxiao_seems_utf8($str) {
 $length = strlen($str);
 for ($i = 0; $i < $length; $i++) {
  $c = ord($str[$i]);
  if ($c < 0x80)
   $n = 0; # 0bbbbbbb
  elseif (($c & 0xE0) == 0xC0) $n = 1; # 110bbbbb
  elseif (($c & 0xF0) == 0xE0) $n = 2; # 1110bbbb
  elseif (($c & 0xF8) == 0xF0) $n = 3; # 11110bbb
  elseif (($c & 0xFC) == 0xF8) $n = 4; # 111110bb
  elseif (($c & 0xFE) == 0xFC) $n = 5; # 1111110b
  else
   return false; # Does not match any model
  for ($j = 0; $j < $n; $j++) { # n bytes matching 10bbbbbb follow ?
   if ((++ $i == $length) || ((ord($str[$i]) & 0xC0) != 0x80))
    return false;
  }
 }
 return true;
}
 
function ls_get_terms($d) {
 //取得查询值
 $queryString = $_GET['referer'];
 $queryString = unescape($queryString);
 $query_str = parse_url($queryString);
 parse_str($query_str[query], $query_str);
 $query = $query_str[$d];
 $query = urldecode($query);
 
 $query = str_replace("'", '', $query);
 $query = str_replace('"', '', $query);
 $query_array = preg_split('/[s,+.]+/', $query);
 $query_terms = implode(' ', $query_array);
 $terms = htmlspecialchars($query_terms);
 //gbk->utf8
 if (!yxiao_seems_utf8($terms)) {
  $terms = iconv("GBK", "UTF-8//IGNORE", $terms);
 }
 return $terms;
}
if (ls_getinfo('isref')) {
?>
document.write('<div id="serp"><p>')
document.write('更多搜索结果:<em><a href="http://www.jb51.net/search?q=<?php ls_getinfo(terms); ?>" ')
document.write('title="查看<?php ls_getinfo(terms); ?>的搜索结果" rel="nofollow"><?php ls_getinfo(terms); ?></a></em>')
document.write('</p></div>');
<?php } ?>
 

时间: 2024-09-27 16:42:32

使用php显示搜索引擎来的关键词的相关文章

使用php显示搜索引擎来的关键词_php实例

以下是相关实现代码: 复制代码 代码如下: <?php/*Plugin Name: display-search-keywordsPlugin URI: http://www.imyxiao.com/1531.htmlDescription: 当访客通过搜索引擎来到你的博客,这个插件可以显示访客搜索的关键词Version: 1.0Author:<a href="http://www.imyxiao.com/">仰肖</a>*/function unesca

搜索引擎如何判断关键词与页面相关度

关注电商圈的朋友肯定会发现排在百度前2名的2个参赛博客已经稳定名次一个周多了,反观其他参赛网站,排名变化是此起彼伏.祁多多博客自从决定参加电商圈大赛以来,也一直在关注这个关键词的排名情况,并且发现很多新站都是首次获得比较好的排名. 祁多多就想搜索引擎是怎么判断网站页面是做的什么关键词的?简单的讲就是关键词和网站页面的相关性程度,相关性好自然会有排名甚至排名很好,相关性不好,可能就排名差点甚至没有排名.在查阅了一些相关资料,并且和群里的朋友讨论了一番后,觉得站在搜索引擎的角度上,应从以下几方面来看

为什么百度显示查看更多关于“关键词”的内容

作为一名SEOer,百度的一举一动都牵动我们的心.因为竞争压力的增加,百度的变动算是越来越频繁.绿萝算法上线.外链的新判断和原创项目等等.不难看出,一系列的动作的最终目的都是为了给用户提供更加有价值的信息,让返回搜索结果信息更加贴近用户的搜索意图.继第二页的顶部"相关搜索"之后,今天百度的搜索结果页面又有了新的改变. 我在百度上搜索"百度原创项目",我在返回搜索结果页面随意点击一个标题,在URL下面弹出"查看更多关于"关键词"的内容&g

php获取从百度、谷歌等搜索引擎进入网站关键词的方法_php技巧

本文实例讲述了php获取从百度.谷歌等搜索引擎进入网站关键词的方法.分享给大家供大家参考.具体实现方法如下: <?php function search_word_from() { $referer = isset($_SERVER['HTTP_REFERER'])?$_SERVER['HTTP_REFERER']:''; if(strstr( $referer, 'baidu.com')){ //百度 preg_match( "|baidu.+wo?r?d=([^\\&]*)|i

seo优化-搜索引擎对网页关键词匹配度的分析

搜索引擎对网页关键词匹配度分析主要通过三个方面:关键词密度.关键词出现次数.相关关键词匹配度 一.关键词密度 关键词密度是关键词匹配度中最重要的要素,过高或者过低的关键词密度都对排名不利,一般来说关键词密度为5%最佳,但是对此没有任何官方定义,而且可以认为不同搜索引擎对此的算法都会不同的,大家只要控制一个范围,尽量控制在5%~10%为最好.特别是百度,绝对不能刻意去增加关键词密度来提供关键词排名,这样只会导致关键词的排名越来越差. 二.关键词出现次数 当然,关键词出现次数是相对关键词密度的另外一

搜索引擎对页面关键词的判断

前些天群内的朋友问我,搜索引擎是如何判断一个页面是做什么词的,为什么这个词在这个页面有排名,在其他的页面就没有排名了.其实这个涉及到搜索引擎的一个算法,就是对关键词和页面相关度的一个考核,说到算法很多人就头大,算法是一个摸不着,看不见的东西,而且变化无常,ZAC的一句话说的好,站在搜索引擎的角度出发,一切的算法都是自然而然的事情,今天我们就站在搜索引擎的角度,来从以下几个方面来看看,搜索引擎如何判读一个关键词和页面的相关度. 第一:关键词的密度 关键词的密度简单的说就是关键词和页面可见总的词数的

搜索引擎在网站关键词排名上注重什么

摘要: 大家都知道搜索引擎的规则不断的在变化.可是否在变得更加强大呢?这个问题值得再三思考.前段时间世界最好的搜索引擎google,突然收购了motorola,125亿美元的天价,我们普通老百姓 大家都知道搜索引擎的规则不断的在变化.可是否在变得更加强大呢?这个问题值得再三思考.前段时间世界最好的搜索引擎google,突然收购了motorola,125亿美元的天价,我们普通老百姓是想都不敢去想的.可google为什么会收购motorola呢?难道搜索引擎的技术已经到了极端了吗?还是说电器在未来的

搜索引擎竞价推广优化之找准关键词

首先引用一个比较为官方的定义:关键词在搜索引擎做竞价推广的过程中指的是网站主借以挖掘潜在客户的字.词.句,甚至是符号.当用户在触发搜索行为并提交网站主提交的字.词.句时,网站主广告就会出现在搜索引擎页面结果中.小脑袋竞价助手今天给您详细说明一下. 对于网民而言,搜索行为已成为习惯.当用户想要查找自己需要的产品或服务时,就会习惯性的对搜索引擎进行搜索(不一样的是所用的搜索引擎并不一致).因此,对于各类产品.服务的供应网站主而言,关键词选择是其开发潜在客户的重要一环. 然而选择好关键词用于搜索引擎竞

周震宇:浅析搜索引擎关键词优化重点

中介交易 SEO诊断 淘宝客 云主机 技术大厅 一个做好的SEO站点,它的大部分流量来源是搜索引擎送来的.也就是说了,用户是通过在搜索引擎搜索相关关键词而来到你的网站的;所以我们说,一个网站的内容建设就是围绕着关键词而进行的;这就引出了今天的话题点-搜索引擎优化的核心是关键词 大家在做站前,一般都会已经构思好大概的网站规划,结构,以及关键词!关键词的选择其实很有深度,而非大家表面上看到的那样,随便几个相关的词语就行了.那是错误的.正确的关键词应该在相关的网站上查询其对应的热度,搜索量,优化难度等