本站已解决手机无限弹广告问题,最近有很多大虾和无作为反应,手机下载不了,总是弹广告啥的,前段时间没时间,今天有空找了教程,完美的解决了这一问题,这里也分享一个教程,如何判断手机和PC电脑显示不同广告代码的教程,
方法分为两种,第一种是专用与WordPress的判断机制,第二种试用与全部,采用js判断手机和PC电脑显示不同广告代码,
如果你是WordPress请用第一种,因为能不用js就不用js吧,这里完美来分享一下教程吧:
第一种:WordPress判断移动设备函数,手机和PC电脑显示不同广告代码
大概是从3.4版开始,wordpress已集成移动设备判断检测函数:
<?php wp_is_mobile(); ?>
实现方法,一下三种样式都可以:
1、该函数不支持任何参数,不能放入广告代码。
<?php if ( wp_is_mobile() ) { /* Display and echo mobile specific stuff here */ } ?>
2、可以显示中文信息,以及自定义参数
<?php if ( wp_is_mobile() ){ echo '你正在使用移动设备浏览'; }else{ echo '你目前使用的不是移动设备'; } ?>
3、无作为自动代码,
<?php if ( wp_is_mobile() ){ ?> 正在使用移动设备浏览(放移动广告) <?php }else { ?> 不是移动设备(放pc广告) <?php } ?>
以上是WordPress使用自带函数判断浏览设备。
第二种:js判断网站在手机和PC电脑上分别显示不同的联盟广告代码(通用)
html里面使用:
<script> var url = location.search; url = url.substr(1); var bs={ versions:function(){ var u = navigator.userAgent, app = navigator.appVersion; return { trident: u.indexOf('Trident') > -1, presto: u.indexOf('Presto') > -1, webKit: u.indexOf('AppleWebKit') > -1, gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, mobile: !!u.match(/AppleWebKit.*Mobile.*/)||!!u.match(/AppleWebKit/), ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, iPhone: u.indexOf('iPhone') > -1, iPad: u.indexOf('iPad') > -1 }; }(), language:(navigator.browserLanguage || navigator.language).toLowerCase() } var flag = true; if(bs.versions.mobile && url!='mobile'){ if(bs.versions.android||bs.versions.iPhone||bs.versions.iPad||bs.versions.ios){ flag=false; } } if(flag){ /*pc广告代码*/ }else{ /*移动广告代码*/ }</script>
JS里面使用:
var url = location.search; url = url.substr(1); var bs={ versions:function(){ var u = navigator.userAgent, app = navigator.appVersion; return { trident: u.indexOf('Trident') > -1, presto: u.indexOf('Presto') > -1, webKit: u.indexOf('AppleWebKit') > -1, gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, mobile: !!u.match(/AppleWebKit.*Mobile.*/)||!!u.match(/AppleWebKit/), ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, iPhone: u.indexOf('iPhone') > -1, iPad: u.indexOf('iPad') > -1 }; }(), language:(navigator.browserLanguage || navigator.language).toLowerCase() } var flag = true; if(bs.versions.mobile && url!='mobile'){ if(bs.versions.android||bs.versions.iPhone||bs.versions.iPad||bs.versions.ios){ flag=false; } } if(flag){ /*pc广告代码*/ }else{ /*移动广告代码*/ }
最上面这块代码就是用来区分访问类型的,大家可以看到有Android、ipad、iphone、linux什么的,
然后下面有个判断,大家直接把PC和手机广告放里面就可以了.
pc是上面的代码块,手机的是下面的代码块,然后引js的格式不要改我的,不然你会报错的,只需替换内容即可。
希望可以帮助到各位!
补充一下判断ios和安卓的代码:2020年11月18日
PHP代码: <?php $user_agent = $_SERVER['HTTP_USER_AGENT']; if(stripos($user_agent,'iPhone')!==false){ echo '苹果手机'; }else if(stripos($user_agent,'Android')!==false){ echo '安卓手机'; } html代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta http-equiv="X-UA-Compatible" content="ie=edge" /> <title>psd</title> </head> <body> <script> var u = navigator.userAgent; var isAndroid = u.indexOf("Android") > -1 || u.indexOf("Linux") > -1; //g var isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端 if (isAndroid) { window.location.href="放安卓下载地址链接" } if (isIOS) { window.location.href="放苹果下载地址链接" } </script> </body> </html> 自动转跳下载地址: <script> var u = navigator.userAgent; var isAndroid = u.indexOf("Android") > -1 || u.indexOf("Linux") > -1; //g var isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端 if (isAndroid) { document.location = '放安卓下载地址链接' } if (isIOS) { document.location = '放苹果下载地址链接' } </script>
js代码里放广告代码,不用document.write直接放?博主你自己写的代码自己试过吗?