Skip to content

dimaslanjaka/hexo-adsense

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

hexo-adsense

Hexo adsense support

Features

  • can display adsense to all pages except specific posts or pages (multiple supported)
  • can only display adsense to specific posts or pages
  • adsense javascript enchantments (lazy adsense included)
  • support display adsense on localhost
  • random display banner ads
  • automated display in random positions of pseudo html elements (such as headers (</h[n]>), new line <br/>, after pretext <pre/>) useful for increasing RPM and CTR Adsense Prices.

Demos

try reload page

Installation

Using Git Repository (Development)

npm i git+https://github.com/dimaslanjaka/hexo-adsense.git

Using NPM Repository (Production)

npm i hexo-adsense

_config.yml

# https://github.com/dimaslanjaka/hexo-adsense
adsense:
  # enable(true) or disable(false)
  enable: true
  # ca-pub-xxxx
  pub: ca-pub-01234567989xx
  # enable in-article
  # boolean = by scanning source_dir/_data/hexo-adsense/*.html
  # array of files = only read spesific html files
  article_ads: true
  # ads field
  # post = only post
  # site = all pages and posts
  field: "site"
  # auto redirect to https
  https: true
  # block user with adblock enabled
  adblock: true
  # exclude pattern to disable adsense
  exclude:
    - "*.min.html"
    - "exclude/**/*"

Article Ads

include to config article_ads

adsense:
  article_ads:
    - "source/ads/in_article.html"

source/ads/in_article.html contents

<!--REMOVE ADSENSE SCRIPT, THIS PLUGIN ALREADY OPTIMIZED THE ADSENSE JAVASCRIPT-->
<!--<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-xxxx" crossorigin="anonymous"></script>-->
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-xxxxx"
     data-ad-slot="xxxxx"></ins>
<!--script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script-->

disable options

to disable adsense on pattern _config.yml or set each post adsense: false.


Enable all except specific post

enable adsense on all pages except spescific posts or pages. set _config.yml

adsense:
  enable: true
  field: "site"
  #... pub, article_ads, etc

set post header

title: "Post title"
adsense: false
tags:
  - tags1
  - tags2

Disable all except post

disable adsense on all pages and posts, except specific posts set _config.yml

adsense:
  enable: false # adsense disabled globally
  #... pub, article_ads, etc

set post header

title: "Post title"
adsense: true # adsense will shown only for post with header `adsense: true` / enabled
tags:
  - tags1
  - tags2

Prioritize ads fill on spesific element

You can adjust where the ads should be visible by using <div hexo-adsense-fill=""></div> everywhere. [Reference]

You also can adjust with independent ads (dont use same adsense ads id).

<div hexo-adsense-fill="" style="display:block" data-ad-client="ca-pub-1048456668116270" data-ad-slot="5659161378" data-ad-format="auto" data-full-width-responsive="true"></div>
<!-- or you can remove ad-client and style attribute -->
<div hexo-adsense-fill="" data-ad-slot="5659161378" data-ad-format="auto" data-full-width-responsive="true"></div>

Above codes will converted into adsense ads automatically.

Footnote

first development finished on 12 November 2021

Website using Hexo NodeJS Blogging System

Test And Deploy GitHub webmanajemen.com

hexo-adsense

npm version Npm package yearly downloads Minimum node.js version GitHub repo size GitHub last commit

hexo-seo

npm version Npm package yearly downloads Minimum node.js version GitHub repo size GitHub last commit

hexo-blogger-xml

npm version Npm package yearly downloads Minimum node.js version GitHub repo size GitHub last commit