• home > OMD > SEO >

    谷歌广告(Google Adsense)前端定制化接入——JS统一接入方案

    Author:zhoulujun Date:

    谷歌广告联盟两者接入方式,一种是自动化接入,一种是按广告单元的传统接入。传统接入方式如何让JS在指定的位置插入谷歌广告呢?

    最近zhoulujun.cn域名被加入工信部黑名单了,腾讯云 DNS—— DNSPod 不给解析,阿里的云的DNS解析正常。放到海外的服务器,访问貌似也没有啥影响。

    但是还是把zhoulujun.cn 换成zhoulujun.cn 域名了。但是之前的百度广告联盟,无法提供收入了。

    百度广告联盟必须接入 经过备案过的域名(之前备案过,后面 备案被注销了也没有事情,百度广告联盟的广告还是正常投放的,广告收益也没有产生啥影响)。但是新域名 必须备案才可以接入。

    但是,我现在彻底不备案了,还是接入谷歌广告联盟算了——Google Adsense,广告也比百度的广告来源多得多,而且可以赚美金。

    之前写过百度广告联盟广告异步加载与代码位优化—自适应如何设置》,

    现在换成Google Adsense,那么如何通过js接入呢?

    谷歌广告联盟两者接入方式,网上都资料很多。但是像之前——百度广告联盟广告异步加载与代码位优化—自适应如何设置》的接入,还是不知道怎么搞?

    WX20220409-225249@2x.jpg

    手动摸索了一下,可以这样接入

    <script src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-4116764389732804" crossorigin="anonymous"></script>
    <script>
        /**
         * 页面添加谷歌广告标签,触发拉取广告
         * 关键点在于 data-ad-region 的更新,data-ad-region 代表广告位。单页应用当路由变化,
         * 页面切换时 更新data-ad-region位标识  模拟页面切换广告位更新。
         * @returns {string}
         */
        function guid() {
            return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
                var r = Math.random() * 16 | 0,
                    v = c == 'x' ? r : (r & 0x3 | 0x8);
                return v.toString(16);
            });
        }
    
        $('#RightTop').html('<ins data-ad-region="page-' + guid() + '" class="adsbygoogle" style="display:inline-block;width:300px;height:300px" data-ad-client="ca-pub-4116764389732804" data-ad-slot="4391436888"></ins>')
    
        $('#RightBottom').html('<ins data-ad-region="page-' + guid() + '" class="adsbygoogle" style="display:block" data-ad-client="ca-pub-4116764389732804" data-ad-slot="1526320572" data-ad-format="auto" data-full-width-responsive="true"></ins>')
    
        $('#LeftBottomTop').html('<ins data-ad-region="page-' + guid() + '" class="adsbygoogle" style="display:block" data-ad-client="ca-pub-4116764389732804" data-ad-slot="1486544707" ata-ad-format="auto" data-full-width-responsive="true"></ins>')
    
        $('#leftBottom').html('<ins data-ad-region="page-' + guid() + '" class="adsbygoogle" style="display:block" data-ad-client="ca-pub-4116764389732804" data-ad-slot="6305710821" data-ad-format="auto" data-full-width-responsive="true"></ins>')
    
        // $('#FooterBottom').html('<ins data-ad-region="page-' + guid() + '" class="adsbygoogle" style="display:block" data-ad-client="ca-pub-4116764389732804" data-ad-slot="5854833424" data-ad-format="auto" data-full-width-responsive="true"></ins>')
    
        var time_ads = setTimeout(() => {
            adsbygoogle = window.adsbygoogle || []
            adsbygoogle.push({}); //触发拉取广告
            adsbygoogle.push({});
            adsbygoogle.push({});
            adsbygoogle.push({});
            // adsbygoogle.push({});
            clearTimeout(time_ads)
            time_ads = null
        })
    </script>

    这样,就可以了

    需要注意的点是

    有几个广告位,就几次push 



    转载本站文章《谷歌广告(Google Adsense)前端定制化接入——JS统一接入方案》,
    请注明出处:https://www.zhoulujun.cn/html/Operation/seo/2022_0409_8784.html