Emlog判断用户来自什么搜索引擎代码插件

发布日期: 作者:冬镜SEO

  • 正文内容
  • 相关推荐
原创

今天冬镜在Young杨小杰博客看到搜索引擎来路提醒小窗,个人感觉还是很新颖,如果大家需要可以自己去看看效果,这个只能稍微提醒一下大家,seo是不太适合挂这种弹窗的。

一、搜索引擎来路提醒小窗代码

<?php
/**
 * 获取网站来路并分析
 * @author Youngxj <blog@youngxj.cn>
 * @time   2018年6月27日
 * @param  string $referers 自定义ua
 * @return strting/bool     输出获取到的来路
 */
function get_referer($referers=''){
	// 更改为自己的网址
	// 避免来路重复
	$localhost = 'www.youngxj.cn';
	/*获取网来路*/
	$referer = $referers ? $referers : $_SERVER['HTTP_REFERER'];
	if(!$referer){
		return false;
	}

	/*获取网站host*/
	$str = parse_url($referer);
	if (!$str['host']||$str['host']==$localhost) {
		return false;
	}
	$url = $str['host'];

	/*关键词判断类型*/
	if(strpos($url,'baidu') !== false){
		$url_str = '百度搜索';
	}elseif (strpos($url,'sogou') !== false) {
		$url_str = '搜狗搜索';
	}elseif (strpos($url,'sm') !== false) {
		$url_str = '神马搜索';
	}elseif (strpos($url,'bing') !== false) {
		$url_str = '必应搜索';
	}elseif (strpos($url,'google') !== false) {
		$url_str = '谷歌搜索';
	}elseif (strpos($url,'so') !== false) {
		$url_str = '360搜索';
	}elseif (strpos($url,'easou') !== false) {
		$url_str = '宜搜搜索';
	}elseif (strpos($url,'yahoo') !== false) {
		$url_str = '雅虎搜索';
	}else{
		/*如果以上都找不到则使用来路域名并截取字数*/
		if (strlen($url)>5) $url_str=substr($url,0,10) . '...';
	}
	return $url_str;
}
?>
<script src="layui/layui.js"></script>
<link rel="stylesheet" type="text/css" href="layui/css/layui.css">
<?php if(get_referer()){?>
<script>
	var popNotice = function() {
		//获取用户授权状态
		if (Notification.permission == "granted") {  
			var notification = new Notification("欢迎来自<?php echo get_referer();?>的朋友", {  
                //很明显这是正文
                body: '若当前文章未能解决您的问题,您可以先尝试站内搜索,当然也可以给我留言喔(^_^)!',
                //很明显这是图标  
                icon: 'https://ww2.sinaimg.cn/large/005BYqpgly1fsnpxsctd7j305k05kwec.jpg'  
            });  
            //消息被点击事件
            notification.onclick = function() {  
            	/*window.open("<?php echo $_SERVER['HTTP_REFERER'];?>");*/  
            };  
			//消息被关闭事件
			notification.onclose  = function() {
				notification.close();      
			};
			//消息出现错误事件
			notification.onerror  = function() {  
				alert('上帝也不知+道发生了什么');  
				notification.close();      
			};
		}      
	};  

	if (window.Notification) {
		if (Notification.permission == "granted") {
			popNotice();  

		}else if( Notification.permission != "denied"){
			Notification.requestPermission(function (permission) {  
				popNotice();  
			});  
		}  
	} else {
		echo_layer();
	}  
	function echo_layer(){
		layui.define(['layer', 'form'], function(exports){
			var layer = layui.layer
			,form = layui.form;

			layer.open({
				title: '<i class="layui-icon layui-icon-face-smile" style="color: #1E9FFF;"></i> 欢迎来自<?php echo get_referer();?>的朋友'
				,content: '<i class="layui-icon layui-icon-group" style="color: green;"></i>若当前文章未能解决您的问题,您可以先尝试站内搜索,当然也可以给冬镜留言喔(^_^)!'
				,offset: 'rb'
				,time:5000
				,anim:2
				,moveOut: true
				,maxmin: true
				,shade: 0
				,btn: ['确认', '关闭']
				,yes: function(index, layero){
					/*window.open("<?php echo $_SERVER['HTTP_REFERER'];?>");*/  
				}
				,btn2: function(index, layero){
				}
				,cancel: function(){ 
				}
			}); 

			exports('index', {}); 
		});    
		
	}
	Notification.requestPermission().then(function(result) {
		if (result === 'denied') {
			echo_layer();
			console.log('许可不获批准。允许重试');
			return;
		}
		if (result === 'default') {
			echo_layer();
			console.log('许可请求被驳回。');
			return;
		}
	});
</script>
<?php }?>

注意:如果桌面浏览器不允许Notification通知权限或者不支持Notification就会使用layerui,当桌面浏览器允许Notification通知权限后就会使用Notification。

代码里面用到的layui.js和layui.css请自行官网下载引入。

Emlog引入这个搜索引擎来路提醒小窗代码步骤如下:

1、先把<?php function get_referer($referers=''){.....}?>整段函数复制module.php

2、然后去header.php引入layui.jslayui.css

3、之后再把<?php if(get_referer()){?>....<?php }?>整段代码放到footer.php即可

4、最后使用搜索引擎或者友情链接进行测试来路测试。

温馨提示:如果技术不够,推荐使用方法二,直接安装插件


二、emlog搜索引擎来路交互插件

搜索引擎来路插件优势

1、增加搜索引擎关键词正则(蹩脚正则处理)

2、修改弹窗策略为来访即弹窗

3、添加cookie控制一个用户只弹一次

4、添加layerjs开关及自动退出时间设置

搜索引擎来路插件安装教程

1、解压文件上传到content/plugins/目录下(也可以后台直接在线安装)

2、后台插件管理,启动插件(如下图)

emlog搜索引擎来路插件

3、设置判断搜索引擎来路插件(如下图),提示一下大家一般默认就可以。

Emlog搜索引擎代码插件

4、大家测试用的百度搜索引擎搜索进入到我的网站,右下角自动提示弹窗(如下图)

emlog搜索引擎

好了如果大家还有什么不懂的,可以联系冬镜或下方评论区留言交流。

原创Young杨小杰博客

管理员设置回复可下载

特别声明

本文为 冬镜SEO 原创发布,仅代表作者观点,不代表冬镜博客网的观点或立场,冬镜博客网仅提供信息发布平台,合作供稿、侵权删除、反馈建议请联系520@520xx.cc

分享SEO优化技术及网站优化教程,一个权威的SEO博客.

标签:

标题:Emlog判断用户来自什么搜索引擎代码插件

链接:https://uqseo.com/emlog/166.html

版权:若无特殊标注皆为 冬镜SEO 原创版权,转载请以链接形式注明作者及原始出处

发表评论

电子邮件地址不会被公开。 必填项已用*标注

评论

19条评论
  1. avatar

    晴川门户网 Lv.4 Chrome 62.0.3202.94 Chrome 62.0.3202.94 Windows 7 x64 Edition Windows 7 x64 Edition 回复

    牛皮啊

    浙江省宁波市 电信

    1. avatar

      樊凡 Lv.1 Chrome 69.0.3497.100 Chrome 69.0.3497.100 Windows 7 x64 Edition Windows 7 x64 Edition 回复

      牛皮啊

      山西省 移动

      1. avatar

        852 Lv.1 Chrome 70.0.3538.25 Chrome 70.0.3538.25 Windows Windows 回复

        测试

        重庆市 电信

        1. avatar

          简简单单 Lv.2 Chrome 69.0.3947.100 Chrome 69.0.3947.100 Windows Windows 回复

          表情 写得好好哟,我要给你生猴子!

          浙江省杭州市 鹏博士长城宽带

          1. avatar

            Lv.1 Chrome 70.0.3538.25 Chrome 70.0.3538.25 Windows Windows 回复

            厉害

            北京市 移动

            冬镜seo客服