문제 :
구글애드센스 인피드를 게시물 사이사이 출력되도록 작업함.
@php
$randomNumbers = [
2, //rand(1, 6),
rand(7, 12),
rand(13, 20)
];
$counter = 0;
@endphp
@foreach ($document_list as $no => $document)
@php
$counter++; // 카운터 증가
@endphp
<li class="item-box" onclick="viewContent('{getUrl('document_srl', $document->document_srl,'commentform','')}')">
게시물
</li>
@if (in_array($counter, $randomNumbers))
<li class="ad-box item-box" style="min-height:100px;">
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-7200623708996327"
crossorigin="anonymous"></script>
<!-- 수평형디스플레이 -->
<ins class="adsbygoogle"
style="display:block"
data-ad-client="ca-pub-7200623708996327"
data-ad-slot="4720910451"
data-ad-format="auto"
data-full-width-responsive="true"></ins>
<script>
// (adsbygoogle = window.adsbygoogle || []).push({});
window.onload = function() {
(adsbygoogle = window.adsbygoogle || []).push({});
}
</script>
</li>
@endif
@endforeach
문제는, 며칠 후 인피드 광고가 하나도 노출이 되지 않음.
이후 디스플레이 광고를 넣어도 광고가 노출되지 않음.
VM8749 adsbygoogle.js:93 TagError: adsbygoogle.push() error: No slot size for availableWidth=0
답변 :
A. https://support.google.com/adsense/answer/9183362?hl=ko&visit_id=638740760587462115-123001011&rd=1
해결책 :
광고 출력되는 영역으로 가로 넓이를 px로 지정해줌.
그런데 디스플레이 광고는 3개를 출력하게 했음에도 1개만 출력이 됨.
참조 :
https://goldsystem.tistory.com/728
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
이렇게 된 부분을
<script>
window.onload = function() {
(adsbygoogle = window.adsbygoogle || []).push({});
}
</script>
https://rgbitcode.com/blog/senspond/48
가로영역을 px로 지정하면 모바일에서도 반응형 적용이 되나요?
반응형으로 별도로 지정해주어야 합니다.