最新消息:博客断断续续关停过,感谢保留友链的友们,以后本博客可能会比较少更新,但是会一直开下去,并保持稳定性。

置顶WordPress致站外来路访客的欢迎词

技术交流 东子 16708次浏览 23 条评论 无图浏览

相信访问过我的博客的朋友们一定都知道,本博客的首页顶部有个欢迎词,用来欢迎访问博客的访客。其实展示欢迎信息功能的实现很简单的,就是通过相关代码检测该访客的浏览器是否有存在一个 comment_author_xxx 的 cookies,如果有则获取该 cookie 数据并在欢迎信息中显示。如果没有则显示另外的欢迎信息。

实现相关功能的代码如下:

<?php
if(isset($_COOKIE['comment_author_'.COOKIEHASH])) {
    $lastCommenter = $_COOKIE['comment_author_'.COOKIEHASH];
    echo "呦!". $lastCommenter .", 又来啦,随便看看吧。";
} else {
    echo "欢迎光临本博客!";
}
?>

当然如果你的网站在别的网站里有链接的话,也可以为从友情链接里来的访客添加单独的欢迎词。

不信?可以先做个测试。如果我有在贵站留过言,或者你很给面子地给我做了一个友链的小盆友们,你们可以通过自己网站上任何一个可以通向本站的链接访问本站。进来之后,你看到了啥?右侧的那个浮动层瞧见没?就是这个了。再比如说通过我的百度统计,点击进入我的网站后,步骤和效果如下图:

WordPress致站外来路访客的欢迎词

(图P的有点粗糙了,凑合看吧~)现在应该明白我讲的是啥效果了吧,具体实现的方法如下:

1、把以下代码复制到 WordPress 主题的 functions.php 中:

/*
 * WordPress致站外来路访客的欢迎词
 * http://blog.kilvn.com/wordpress-show-refer-in/
*/
function show_refer_in(){
$refer_info=$_SERVER['HTTP_REFERER'];
$ban_list=array($_SERVER["HTTP_HOST"]);
for($ii=0;$ii<count($ban_list);$ii++){
if(strpos($refer_info,$ban_list[$ii])){
return;
}
}
if($refer_info){
preg_match("/^(http:\/\/)?([^\/]+)/i",
$refer_info, $matches);
$host = $matches[2];
echo "<div id=\"hellobaby\">欢迎来自 <span class=\"from-url\">".$host."</span> 的朋友!<br />推荐您 <b>
<a href=\"http://list.qq.com/cgi-bin/qf_invite?id=2aaaa8ba375d30b831ae46e08bc86530e2607a3f92eca8a7\" 
target=\"_blank\">点击这里</a></b> 订阅我的博客
<div class=\"closebox\"><a href=\"javascript:void(0)\"onclick=\"$('#hellobaby').
slideUp('slow');$('.closebox').css('display','none');\" title=\"关闭\">×</a></div></div>";
}
}

2、在主题文件的任何部位调用以下函数,我建议是放在 footer.php 中:

<?php show_refer_in();?>

3、接下来样式部分仅供参考:

/* 致访客的欢迎词 */
#hellobaby {background:#000000;border:1px solid #B3B3B3;color:#FFFFFF;font-size:14px;opacity:0.7;filter:alpha(opacity=70);padding:10px 20px;position:fixed;right:15px;top:100px;z-index:99999;}
.from-url{color:green;font-weight:bold;}
.closebox{float:center;text-align:center;font-size:16px;margin-top:10px;}

这样就OK了,试下吧~

文中核心代码来自Shura

声明:欢迎转载,转载请注明来源:东子博客。  本文地址链接:http://blog.kilvn.com/wordpress-show-refer-in/

发表我的评论
取消评论
表情 每日打卡 贴图 链接 私密消息

Hi,您需要填写昵称和邮箱!

  • 昵称
  • 邮箱
  • 网址

网友最新评论 (23)

  1. 陌小雨博客2015-10-27 18:58 我进一步研究了下,显示来访网站名称,详见:http://www.dedewp.com/3212.html回复
  2. mrju.cn2015-10-01 03:45 http://www.simaile.com.cn回复
    • 东子2015-10-05 17:48 我看到你的站已经可以了。回复
  3. mrju.cn2015-09-27 16:41 我按照你这么做,页面打开空白,还好备份文件了。回复
  4. mrju.cn2015-09-26 19:54 这个功能怎么没用了?回复
  5. 引领潮流2014-07-07 02:14 第一次访问,支持。~回复
  6. 刚哥笔记2014-06-17 11:52 用了代码,但是没有显示出效果.回复
  7. 匿名2014-04-12 13:38 哟,好腻害哟 😕回复
  8. Xiao2013-10-09 08:16 这个情况能说下么,用谷歌搜索进来的.... 😯回复
  9. 跑车房2013-10-07 01:38 淫才,向你学习回复
    • 东子2013-10-07 01:46 转载的,不过功能很不错,呵呵回复
  10. 平板盒子2013-10-06 20:53 群发邮件是怎么搞的?回复
    • 空城旧梦2013-10-06 20:54 插件。回复
      • 平板盒子2013-10-06 20:58 囧,怎么不是博主回复,用的什么插件。回复
        • 东子2013-10-06 21:11 你收到我的邮件了?发出去标题怎么乱码了,囧。插件名字叫:WP Mass Mailer回复
          • 平板盒子2013-10-06 21:12 哦,这个插件我以前也用过,我以为你是用的另外的些什么软件。回复
            • 东子2013-10-06 21:14 嗯,每隔一段时间给所有评论用户(也可以加上注册用户)发邮件,提高回头率~回复
  11. 空城旧梦2013-10-06 20:49 你觉得我用了吗?回复
    • 东子2013-10-06 21:12 拿的我的CSS你得瑟啥呢回复
  12. 牛逼思维2013-10-06 12:24 呵呵,好厉害。。看到了。回复