Google广告是在中国大陆有一批服务器,这批服务器感觉不太给力啊,影响网站的加载速度,会让某些页面加载很慢很慢,一直在转圈圈,要等好久,看着揪心!
如何优化Google广告加载速度呢?
Google已经对广告已经优化了,官方已经使用了异步加载,但是使用起来还是让人抓狂,还有没有进一步优化的必要呢?有很多人浏览器加载页面很快,是因为用了广告拦截插件,把广告元素还没开始加载,就扼杀在摇篮了!某些网页会感觉飞一般的流畅和清爽!
实验的过程中,如果使用Google广告,不开启广告过滤的情况下,某些时候某些页面会出现长达10~20S的加载过程,真的不是很友好!
原始:
Google官方一般给的代码,都是比较简单的,例如:
Adsense自定义广告代码:
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle"
style="display:block"
data-ad-client="ca-pub-你的id"
data-ad-slot="你的id"
data-ad-format="auto"
data-full-width-responsive="true"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
Adsense自动广告代码:
<script data-ad-client="ca-pub-xxx" async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
优化:
实际Google代码现在的思路很简单,就是设置setTimeout()函数!
setTimeout()函数有什么用呢?
简单实例:
2 秒(2000 毫秒)后弹出 “Hello,world!” :
setTimeout(function(){ alert("Hello,world!"); }, 2000);
setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式。
SO!We Get!
<script>
window.onload = function() {
setTimeout(function() {
let script = document.createElement("script");
script.setAttribute("data-ad-client", "ca-pub-你的id");
script.setAttribute("async", "");
script.src = "//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?";
document.body.appendChild(script);
}, 0);
};
</script>
也就是广告时间延迟异步加载,这样可以加快加载速度!设置延迟自己定义!这样符合Google官方不能不能改变代码的要求,至于收益情况,博主也尝试了,可能是不影响收益的,可能我的收益比较低吧?!!!
如果这个页面有多个自定义的区块广告,我们可以把异步代码放在head or foot!
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
这个JS引用一次足够!以上中小网站足以,如果进行深度优化可以继续往下看!
如果深度研究的话,有一个完整的代码,大家可以看看,做做尝试!直通车:GitHub
本作品采用 署名-非商业性使用-禁止演绎 4.0 国际(CC BY-NC-ND 4.0) 进行许可
你谷歌广告是不是用了自动广告
@Mankey 对啊,有自动广告
最好还是别改,有人修改代码被判作弊封号
@Mankey 这个应该不影响,只是延时触发广告
@冰鸟 嗯,之前看别人博客发过这种文章
@Mankey 嗯嗯,确实有
看了半天,我还是原样放着吧。
@姜辰 为啥你的评论,我每次都要审核?
@冰鸟 可能我帅吧。
@姜辰 哈哈哈,你最帅!