百度联盟SSP媒体广告异步加载代码最优解决方案

4周前 ( 09-29 ) 532阅读 2评论

相信很多站长跟我一样,建站之后第一时间就会去做百度、谷歌等联盟广告,原因很简单,就是希望能给自己增加一丢丢的收入,虽然可能几个月才收到100块(百度真小气,一个月一百块都不给我),毕竟苍蝇再小也是肉啊,有就总比没有强,但是谷歌还好,除了申请比较费劲,因人而已,有些人一次通过,有些人N次都不通过,比如,,,我的站。

百度联盟SSP媒体广告异步加载代码最优解决方案 第1张

退而求其次使用了百度的SSP媒体广告,在使用的过程中很多人可能直接会选择用异步加载广告代码,它有助于改善网络延迟,为网站的访问者提供更佳的用户体验。异步代码的优势在于能够确保绝不会妨碍网页的其他部分进行加载,这是官方给出的说明,但是还是能发现使用了异步加载后的网站,还是有js错误提醒,如图:

百度联盟SSP媒体广告异步加载代码最优解决方案 第2张

就酱婶儿的,不知道你们怎么看,至少我觉得挺烦人的,不正规,有一段时间我都想停了百度联盟的广告,对喽就是因为这个JS提醒,后来在论坛闲逛发现可以优化一下,减少JS错误提醒。

百度广告是用 document.write 同步输出到页面上的,很显然,并不能异步加载有 document.write 方法的 js 文件,所以会有该 warning,不过这个提醒并不影响广告正常显示。具体的改造方案如下:

首先我们在百度SSP媒体广告或者百青藤获取广告代码:

<script type="text/javascript">
    (window.slotbydup = window.slotbydup || []).push({
        id: "u972425",
        container: "_iizsmwq9n2",
        async: true
    });
</script>
<!-- 多条广告如下脚本只需引入一次 -->
<script type="text/javascript" src="//cpro.baidustatic.com/cpro/ui/cm.js" async="async" defer="defer" >
</script>

我们把最后的js和上面的ID值复制下来,完整代码如下:

----百度代码ID框架----
<div id="SSP_AD1"></div>

<!--广告位代码放在页面最后-->
<script type="text/javascript" src="//cpro.baidustatic.com/cpro/ui/cm.js"></script>

<!--异步加载的百度SSP广告代码格式-->
<script type="text/javascript">
	BAIDU_CLB_fillSlotAsync('5972425','SSP_AD1');
</script>

其中 5972425 是广告编号,SSP_AD1是您要投放广告的位置,DIV必须是唯一ID,否则可能出现错乱。这样操作下来就不会再有JS提示,网站速度可能也会快一丢丢(自我感觉,不知道是不是心理作用)。代码格式是固定的,但是广告id和div的ID值根据实际情况修改。

PS,如果主题模板没有给广告位预留ID,可以自己添加。

另外“<script type="text/javascript" src="//cpro.baidustatic.com/cpro/ui/cm.js"></script>”代码网页有一个就行,不用每个广告都添加,最好放在<head>标签之内。

就目前而言我感觉这个方案挺好的,至于有没有更优的方案俺就不知道了,您知道的话可以告知我,谢谢你!

文章版权声明:除非注明,否则均为李洋个人博客原创文章,转载或复制请以超链接形式并注明出处。

发表评论

表情:
评论列表 (有 2 条评论,532人围观)
网友昵称:历史大全
历史大全V铁粉2020-10-09沙发 回复 Google Chrome 55.0.2883.87 Windows 8.1 x64
这个好 先试试[Applause]
网友昵称:李洋博客
李洋博客V博主2020-10-10 回复 Sogou Explorer Windows 10 x64
@历史大全 嗯嗯,可以参考本站,速度嗖嗖地~
取消
支付宝二维码
支付宝二维码
微信二维码