重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章主要介绍了微信小程序添加插屏广告并设置显示频率的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
采用H5响应式网站+css3国际标准网站建设,让网站自动适应用户使用终端设备,PC、平板、手机等,一个网址适应,一套内容统一战略,节约企业资源。创新互联还提供网站后期营销如:软文平台、卖链接、广告投放等。一般建站公司不为企业填充资料,更谈不上内容策划,结果导致网站界面优秀,内容却十分空泛或整体不协调,内容策划、内容填充请交给我们。
插屏广告
用户触发小程序中的特定场景时,插屏广告将自动向用户展现,用户可以随时关闭插屏广告。广告触发场景由流量主自定义,广告按曝光计费(CPM)。
微信小程序今年新上线了插屏广告,设置和在代码库中接入都非常方便。详细可见微信小程序官方文档。
大体的流程就是在小程序后台新建广告位,获取到广告位的adUnitId并嵌入到源代码,因为插屏广告的单页面性,在页面的onload处添加即可。
let interstitialAd = null; if (wx.createInterstitialAd) { interstitialAd = wx.createInterstitialAd({ adUnitId: 'adunit-ID' }) } if(interstitialAd) { interstitialAd.show().catch((err) => { console.error(err); }) }
嵌入广告非常简单,毕竟微信已经将所有的接口写好了,开发者仅需调用即可。
主要的功能点是设置一个插屏广告一天只显示一次,而微信并没有提供这方面的api,秉持前端能完成的就不要麻烦后端,便想到直接使用缓存存储当期日期,用户打开页面的时候获取上次缓存的日期查看是否相同即可。
//这里使用的是mpVue框架,写在mounted里。 let nowday = new Date().getFullYear().toString() + (new Date().getMonth() + 1).toString() + new Date().getDate().toString() ; //获取上次打开页面时间 try { let lastDay = wx.getStorageSync('day'); if(lastDay) { console.log('lastday', lastDay); console.log('nowday', nowday) if(lastDay == nowday) { this.flag = false; } else { this.flag = true; } } } catch (e) { //用户首次打开 this.flag = true; console.error(e); console.log('true no storage', this.flag) } if(interstitialAd && this.flag) { interstitialAd.show().catch((err) => { console.error(err); }) } interstitialAd.onLoad(() => { try { wx.setStorageSync('day', nowday); console.log('存储时间', nowday); } catch (e) { console.log('err', err) } })
PS:下面看下一天只显示一次的弹出广告
仿京东官网顶部的广告关闭,效果为第一次进入官网会出现广告,然后点击关闭,刷新网页不会再显示广告,但是当清除localStorage存入的数据,刷新网页会再显示广告。
html代码
css代码
.header{ width:100%; height:80px; background:#000; } .header-a{ width:1190px; margin:0 auto; position:relative; background:url("images/1.jpg") no-repeat; } .header-a a{ width:100%; height:80px; display:block; } .close{ cursor:pointer; color:#fff; position:absolute; top:5px; right:5px; background:rgb(129, 117, 117); width: 20px; text-align: center; line-height: 20px; }
js代码
//localStorage方法 function popAd(){ //判断localStorage里有没有isClose if(localStorage.getItem("isClose")){ $(".header").hide(); }else{ $(".header").show(); } //点击关闭隐藏图片存取数据 $(".close").click(function(){ $(".header").fadeOut(1000); localStorage.setItem("isClose", "1"); }) } popAd();
chrome console清本地缓存localStorage.clear()
批量清:
localStorage.clear()
单独清除某个记录的缓存,如:
localStorage.clear("popup_info") 或 localStorage.removeItem("popup_info");
感谢你能够认真阅读完这篇文章,希望小编分享的“微信小程序添加插屏广告并设置显示频率的示例分析”这篇文章对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,更多相关知识等着你来学习!