TIP/Etc Tip

애드센스 광고 안 뜰 때 영역 없애는 방법

서근 2022. 9. 12. 09:36
반응형

애드센스가 가끔 안나올때가 발생하는데, 이럴때 광고 영역이 그대로 남아있게 됩니다. 애드센스 광고가 안뜨면 광고 영역을 삭제하는 방법에대해 간단히 알아보도록 하겠습니다.

애드센스 광고가 안 뜰 때 영역 삭제 방법

애드센스 광고 영역을 콘솔 로그에서 살펴보자면 다음과 같습니다.

ins 태그를 보면 data-ad-status="filled"를 볼 수 있습니다. 만약 이 속성의 값이 filled라면 광고가 정상적으로 표시되었다는 의미입니다.

 

반대로 속성의 값이 unfilled라면 광고가 표시되지 않고 있다는 의미이겠죠.

 

우리는 이것을 이용해 CSS로 쉽게 없앨 수 있습니다.

ins.adsbygoogle[data-ad-status="unfilled"] {
  display: none !important;
}

ins태그의 클래스가 adsbygoogle이고 attr 이름이 data-ad-status, 그리고 그 안에 값이 unfilled 가 일치한다면, displaynone으로 한다.라는 코드입니다.

 

위 코드를 CSS에 붙여 넣어주면 됩니다.

 

만약, ins data-adstatusunfilled라면 부모 클래스까지 정말 없애고 싶다면 JS를 사용하면 됩니다.

setTimeout(() => {
    let googleAttr = $('ins.adsbygoogle.top-right').attr('data-ad-status');
    if (googleAttr !== 'filled') {
        $('.ad-top-right').hide();
    }
}, 3000);

 

자식 클래스의 이름이 ins.adsbygoogle.top-right이고 그 속성 이름을 변수로 가져왔고, 조건문을 통해 자식 클래스의 속성 값이 filled가 아니라면, 부모 클래스인 ad-top-rightdisplaynone으로 해주는 코드입니다.

 

그리고 setTimeout()으로 3초뒤에 삭제하는 이유는 애드센스가 JS를 통해 DOM 안에 약간의 시간을 가지고 들어가기 때문에 그게 맞게 3초정도의 여유시간을 두고 삭제해줬습니다.


오늘은 이렇게 애드센스 광고가 안 뜨면 광고 영역을 삭제하는 방법에 대해 알아보았습니다.

 

읽어주셔서 감사합니다🤟