Vue.js Google Adsense Component with InFeed and InArticle Ads support
https://mazipan.github.io/vue-google-adsense/
At least there is three (3) type ads in Google Adsense :
-
Responsive Ads: A simple way to get ads on your page. Choose the size, placement and style you want to display. Learn more
-
In Article Ads: Ads that fit seamlessly in between the paragraphs of your pages for an enhanced reading experience. Learn more
-
In Feed Ads: Ads that flow naturally inside a list of articles or products on your site, offering a great user experience. Learn more
Need dependencies vue-script2, you need to install :
npm install vue-script2 vue-google-adsense --save
import Ads from 'vue-google-adsense'
Vue.use(require('vue-script2'))
Vue.use(Ads.Adsense)
Vue.use(Ads.InArticleAdsense)
Vue.use(Ads.InFeedAdsense)
Import only AdsType
you need
import Adsense from 'vue-google-adsense/dist/Adsense.min.js'
import InArticleAdsense from 'vue-google-adsense/dist/InArticleAdsense.min.js'
import InFeedAdsense from 'vue-google-adsense/dist/InFeedAdsense.min.js'
Vue.use(require('vue-script2'))
Vue.use(Adsense)
Vue.use(InArticleAdsense)
Vue.use(InFeedAdsense)
Create file plugins/vue-google-adsense.js
, with code :
import Vue from 'vue'
import Ads from 'vue-google-adsense'
Vue.use(require('vue-script2'))
Vue.use(Ads.Adsense)
Vue.use(Ads.InArticleAdsense)
Vue.use(Ads.InFeedAdsense)
Then update your nuxt.config.js
, with code :
module.exports = {
plugins: [
{ src: '~/plugins/vue-google-adsense', ssr: false }
]
}
VueAdsense Template :
<Adsense
data-ad-client="ca-pub-XXXXXXXXXXXXXXXX"
data-ad-slot="1234567890">
</Adsense>
VueInArticleAdsense Template :
<InArticleAdsense
data-ad-client="ca-pub-XXXXXXXXXXXXXXXX"
data-ad-slot="1234567890">
</InArticleAdsense>
VueInFeedAdsense Template :
<InFeedAdsense
data-ad-layout-key="-fg+5n+6t-e7+r"
data-ad-client="ca-pub-XXXXXXXXXXXXXXXX"
data-ad-slot="1234567890">
</InFeedAdsense>
import Vue from 'vue'
import Ads from 'vue-google-adsense'
Vue.use(require('vue-script2'))
Vue.use(Ads.AutoAdsense, { adClient: 'YOUR_GOOGLE_AD_CLIENT' })
Attribute | Type | Default | Description |
---|---|---|---|
root-class | String | adswrapper |
Class for fill in wrapper block |
ins-class | String | empty |
Class for fill in ins tag |
ins-style | String | display:block; |
Style for fill in ins tag |
data-ad-client | String | empty |
Attribute data-ad-client from adsense |
data-ad-slot | String | empty |
Attribute data-ad-slot from adsense |
data-ad-layout-key | String | empty |
Attribute data-ad-layout-key from adsense |
data-ad-test | String | empty |
Attribute data-ad-test from adsense |
data-ad-format | String | auto for Adsense Adsfluid for InFeed and InArticle Ads |
Attribute data-ad-format from adsense Possible values are auto , horizontal , vertical , rectangle or fluid |
data-full-width-responsive | Boolean | false |
Attribute data-full-width-responsive from adsense |
is-non-personalized-ads | Boolean | false |
Props for request non-personalized ads, read more |
Already used in production for these project :
- Blog-2.0
- Explore-Github
- Fire Jak
- Rumah Sakit Jakarta
- ChuckNorris
- Nuxt blog - Surmon.me
- Etc... // You can add the list here via pull request
# install dependencies
npm install
# serve with hot reload at localhost:8080
npm run dev
# build for production
npm run build
- Via trakteer
- Direct support, send me an email
Copyright Β© 2018 Built with β€οΈ by Irfan Maulana
Thanks goes to these wonderful people (emoji key):
Irfan Maulana π» |
Cody Nguyen π» |
C-Bass π» π |
This project follows the all-contributors specification. Contributions of any kind welcome!