Q&A

CMS/프레임워크 XE 1.x
개발 언어 PHP 7.0

기존에 애드센스 비동기를 확실하게 하는 팁은 적용해서 잘 사용하고 있습니다.

 

https://github.com/getify/LABjs

 

 

기존의 애드센스 비동기 처리했던 코드 입니다.

 

<script src="js/LAB.js"></script>// 레이아웃에서 초기에 불러오도록 처리했습니다.

 

<script>
jQuery(function($) {
setTimeout(function() {
$LAB
.script("//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js")
.wait(function () {
var adn = jQuery('.adsbygoogle').length;
if (adn > 0) {
for (var i = 0; i < adn; i++) {
(adsbygoogle = window.adsbygoogle || []).push({});
}
}
});
}, 1000);
});
</script>

 

 

 

 

그런데 중간 중간에 스크립트들 중 에서 지연 동작 시키고 싶은 것들이 있습니다. 애드센스는 아닙니다. 비슷한 동작이 되도록 하고 싶은데요..

 

 

이런 코드 입니다.

<div id='div-gpt-ad-1500694359151-0' style='height:90px; width:728px;'>
<script>googletag.cmd.push(function() { googletag.display('div-gpt-ad-1500694359151-0'); });</script>
</div>

 

 

위 광고단위가 출력되려면 레이아웃 등의 상단에 아래와 같은 코드가 있어야 합니다.

 

<script async='async' src='https://www.googletagservices.com/tag/js/gpt.js'></script>
<script>
  var googletag = googletag || {};
  googletag.cmd = googletag.cmd || [];
</script>

<script>
  googletag.cmd.push(function() {
    googletag.defineSlot('/58666060/pomleove_728_noadsense', [728, 90], 'div-gpt-ad-1500694359151-0').addService(googletag.pubads());
    googletag.pubads().enableSingleRequest();
    googletag.enableServices();
  });
</script>

 

구글서버를 이용한 광고 입니다. 위 부분도 비슷하게 동작시키고 싶은데 어찌 해야 할까요??  

댓글 2

  • 2018.12.21 06:20 #1132152
    $LAB
    .script("SCRIPT URL")
    .wait(function () {
    //로딩이 끝나면 실행할 스크립트
    });

    이렇게 쓰시면 어느거에나 쓰실수 있습니다.
  • 2018.12.21 06:22 #1132156

    .script("SCRIPT URL") 가 없다면..


    $LAB
    .wait(function () {
    //로딩이 끝나면 실행할 스크립트
    });

    요렇게 가능한건가요?? 어제 이렇게 했다가 settimeout 까지 해봤는데 지연이 안된는거 같아서 원복했거든요.

    위에 다른 스크립트를 기다리는 것이 아닌 컨텐츠가 로딩이 끝난 후 실행되길 바래서 조금더 정확한 비동기를 실현하려는 목적이거든요. 물론 적용하지 않아도 비동기로 동작은 하는 듯 합니다.

     

     

    어... 오늘 다시 테스트 해보니 지연시간도 잘 적용되네요.