질문/조언팁/리소스 공유

일전에 애드센스의 경우 광고가 한화면에 여러개가 출력되어도 공통스크립트는 1번만 출력하고 그리고 각 광고단위에 필요한 함수도 일괄적으로 한번에 실행해는 것을 적용한 적이 있습니다.

 

 

https://xetown.com/topics/1046267

 

 

이 팁을 적용해 두면 장점이 똑같은 스크립트를 광고를 넣는 곳마다 반복해서 실행하지 않고 1번만 실행한다는 것이 있습니다.

 

 

이번에 다음 애드핏을 로그인 회원 위주로 넣고 나서 확인해보니 애드핏도 스크립트 자체는 페이지에서 1번만 실행되면 되는 같은 구조이더군요.

 

그래서 약간 고쳐서 애드핏에서도 적용해봤습니다.

 

기존에 적용한 곳이 레이아웃의 맨 아래 정도 될테니 그 아래 추가해 주시면 됩니다.

 

 

 

<script>
jQuery(function($) {
setTimeout(function() {
$LAB
.wait(function () {
var kadn = jQuery('.kakao_ad_area').length;
if (kadn > 0) {
$LAB.script("//t1.daumcdn.net/adfit/static/ad.min.js")
}
});
}, 50);
});
</script>

 

 

붉은 색 50은 스크립트를 지연시킬 시간입니다. 저희는 이번에 서버를 교체하고 서버가 워낙 빨라져서 지연시간을 거의 주지 않았습니다. 서버 성능이 안좋아 페이지로딩 자체가 느린 곳은 저 지연시간을 충분히 1000(1초) 정도 주면 광고는 늦게 뜨지만 페이지 컨텐츠 로딩은 방해받지 않고 빠르게 뜨게 할 수 있는 기능입니다.

 

페이지에 다음 애드핏 광고가 삽입될때 사용되는 kakao_ad_area 클래스가 확인되면 스크립트를 동작하게 하는 방식입니다.

 

광고를 실제 출력할 곳의 스크립트는 모두 빼버리시면 됩니다.

<script type="text/javascript" src="//t1.daumcdn.net/adfit/static/ad.min.js" async></script>

기분탓 이겠지만 스크립트를 한번만 맨 마지막에 실행해서 전체 광고를 띄워주니 동작이 빠릿 해진 것 같고 그러네요.

  • profile
    애드핏은 워낙 빨리 떠서 많이 안거슬렸지만 한번 해봐야겠네요 감사합니다~
  • profile profile
    애드핏이 빨리 뜬다는게 문제인거죠. 비동기란 원래 컨텐츠가 다 뜬 후에 뜨는게 맞지만 애드센스도 정확한 비동기를 지키지 못하고 컨텐츠에서 필요한 다른 js 로딩보다 먼저 동작해서 웹사이트 반응이 느린곳은 컨텐츠로딩 자체를 느리게 합니다.

    본문제 애드센스 관련 팁을 적용하는 이유가 그런 이유입니다.

    그런데 이 팁에 스크립트를 반복해서 요청하지 않는 팁도 포함되어 있으므로 활용하는 것이죠.

    애드핏이 애드센스보다는 조금 느리게 반응합니다.

서버에 요청 중입니다. 잠시만 기다려 주십시오...