• 회원가입
  • 로그인
  • 구글아이디로 로그인

[money] JS - 애드센스 로드 빠르게 (= 애드센스 로딩 속도 개선) ★

5,549  

그누보드5 기준으로 설명. (참고로, 저는 방법2 사용 중)

방법1, 방법2 둘 다 원리는 동일. 단, 로드 이벤트 적용 방식만 다를 뿐.

즉, 

adsbygoogle.js 외부 스크립트는 한번만 상단에 추가.

adsbygoogle = window ... 코드는 배너 개수만큼 하단에 추가. 

 

 

방법1

 

1. 

비동기식 애드센스 코드에서 파란색 코드만 남기고 빨간색 <script> 코드는 삭제 후 추가


<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>

<ins class="adsbygoogle"

   style="display:inline-block;width:336px;height:280px"

   data-ad-client="ca-pub-"

   data-ad-slot="○"></ins>

<script>

(adsbygoogle = window.adsbygoogle || []).push({});

</script>

 

 

2.

head.sub.php 파일안의 </head> 태그 바로 위에 아래 파란색코드 추가

방법1 - 애드센스 원본 코드 사용

 

<!--애드센스 로드2 - 홈짱 -->

<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>



방법2 - 애드센스 로드 지연 코드 사용

<!--애드센스 로드2 - 홈짱 -->

<script type='text/javascript'>

//<![CDATA[

// Lazy Load AdSense

var lazyadsense=!1;window.addEventListener("scroll",function(){(0!=document.documentElement.scrollTop&&!1===lazyadsense||0!=document.body.scrollTop&&!1===lazyadsense)&&(!function(){var e=document.createElement("script");e.type="text/javascript",e.async=!0,e.src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js";var a=document.getElementsByTagName("script")[0];a.parentNode.insertBefore(e,a)}(),lazyadsense=!0)},!0);

//]]>

</script>


 

3.

head.sub.php 파일안의 <body> 태그 안에 아래 파란색코드 추가

 

<body<?php echo isset($g5['body_script']) ? $g5['body_script'] : ''; ?> onLoad="initialize_page();"><!--애드센스 로드3 - 홈짱 -->

 

 

4.

tail.sub.php 파일 </body> 바로 위쪽에 아래 코드 추가

 

<!--애드센스 로드4 - 홈짱 -->

<script>

function initialize_page() {

    var ad_cnt = $('.adsbygoogle').length;

    if (ad_cnt > 0) {

        for(var i=0; i<ad_cnt ; i++) {

            (adsbygoogle = window.adsbygoogle || []).push({});

        }

    }

}

</script>

 

※ 한 페이지에 노출되는 구글배너 개수만큼 각 라인 추가

정보출처: https://technosmarter.com/js/google-ads-load-after-page-has-loaded.php


 

 

방법2 (저는 이 방법 적용)

 

1. 

비동기식 애드센스 코드에서 파란색 코드만 남기고 빨간색 <script> 코드는 삭제 후 추가


<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>

<ins class="adsbygoogle"

   style="display:inline-block;width:336px;height:280px"

   data-ad-client="ca-pub-"

   data-ad-slot="○"></ins>

<script>

(adsbygoogle = window.adsbygoogle || []).push({});

</script>

 

PS. 별도의 파일로 만든 후, 인클루드 형태로 사용 가능.

 

2.

사용 중인 head.sub.php  파일 상단 <head> 태그 안에 아래 코드 추가.

방법1 - 애드센스 원본 코드 사용

 

<!--애드센스 로드2 - 홈짱 -->

<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>



방법2 - 애드센스 로드 지연 코드 사용

<!--애드센스 로드2 - 홈짱 -->

<script type='text/javascript'>

//<![CDATA[

// Lazy Load AdSense

var lazyadsense=!1;window.addEventListener("scroll",function(){(0!=document.documentElement.scrollTop&&!1===lazyadsense||0!=document.body.scrollTop&&!1===lazyadsense)&&(!function(){var e=document.createElement("script");e.type="text/javascript",e.async=!0,e.src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js";var a=document.getElementsByTagName("script")[0];a.parentNode.insertBefore(e,a)}(),lazyadsense=!0)},!0);

//]]>

</script>

 

 

3. 

tail.sub.php 파일 </body> 바로 위쪽에 아래 코드 추가.

 

<!-- 애드센스 로드3 - 홈짱 -->

<script>

$(window).load( function() {

    var ad_cnt = $('.adsbygoogle').length;

    if (ad_cnt > 0) {

        for(var i=0; i<ad_cnt ; i++) {

            (adsbygoogle = window.adsbygoogle || []).push({});

        }

    }

});

</script>



 

PS.

그누보드5 <head> 태그 위치

 

① 테마 사용 X : /head.sub.php

② 테마 사용 O : /theme/사용테마/head.sub.php

 


그누보드5 </body> 태그 위치

 

① 테마 사용 X : /tail.sub.php
② 테마 사용 O : /theme/사용테마/tail.sub.php

 



분류 제목
talk 제 홈페이지 견적
talk 브레이브 브라우저가 오늘은 제일 느리네요. ㅡㅡ;
web 일본 (보이콧・불매운동) 배너 달기 (= 노재팬배너 = Nojapan Boycott Banner)
web 오픈SSL 하트블리드 결함 (=프라이빗 키 유출 위험) 안내
talk 배추빌더 포털형 디자인이 참 마음에 들어요 ^^ 2
pc PUTTY.RND 파일 정체 ?
site 포켓볼게임 (Pocketball Game)
money SWIFT 코드 (=은행 및 기타 금융기관별 고유 식별 코드) ?
web 표준과 쿼크...딜레마 ㅡㅡ;; 회원 님의 선택은? 2
web G5 - pax_global_header 파일 정체
talk 어깨 아파요ㅋㅋㅋ 2
talk 가입인사드립니다. 2
talk 즐겨찾기 사이트가 너무 많아서, 이젠 정보의 홍수네요. ㅋ 6
web 각종 무료 폰트 저작권 사용 조건 한눈에 보기
web F12 (개발자모드) console (콘솔)창 열기 ★ + 한줄 밑으로 이동해 내려쓰기
talk 텀블러 수집기 vs 인스타그램 수집기 4
talk 놀아요~ㅎㅎㅎㅎㅎ 1
talk 홈짱닷컴과 배추빌더는 어떤관계 일까요? 3
web JQ - detach() vs. remove() 메서드 차이 예제
talk 안녕하세요 1
135/163
목록
찾아주셔서 감사합니다. Since 2012