Loading
0

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

公众号搜索菜鸟站长之家

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

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

就酱婶儿的,不知道你们怎么看,至少我觉得挺烦人的,不正规,有一段时间我都想停了百度联盟的广告,对喽就是因为这个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值根据实际情况修改。

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

就目前而言我感觉这个方案比较好了。

文章声明:
1、本站文章来源于互联网,仅供学习交流使用,严禁用于商业用途,因此造成的一切法律后果自行承担。
2、本站不对文章内容的完整性和安全性负责,请自行辨别,如发现有问题,请及时联系我们进行处理。
3、若文章中有侵权或不适当内容,请留言告知我们,本站会第一时间进行处理。