블로그 글 본문에 삽입된 애드센스 광고
글의 전체 맥락을 해치지 않는다면 블로그 글 본문에 구글 애드센스 광고를 삽입해도 무방하다고 생각하는 편입니다. 글의 길이가 충분히 길고 제공하는 콘텐츠의 내용이 풍부하다면 본문 중간에 삽입된 광고는 블로그 운영자와 방문자 모두에게 도움이 될 거라 생각합니다.
애드센스 광고 삽입 방법
블로그 글 본문에 애드센스 광고를 삽입하는 방법은 여러가지가 있습니다. 1) 티스토리 구글 애드센스 플러그인을 활용하는 방법도 있고, 2) 서식이나 외부 콘텐츠를 이용해서 직접 광고 코드를 본문 내에 삽입하는 방법도 있습니다. 두 가지 방법 모두 맘에 안 드는 부분이 있습니다.
구글 애드센스 플러그인의 경우 광고 삽입 위치를 내 마음대로 선택하는 것이 불가능 합니다. 광고 재게 위치를 본문 상단이나 하단 외에는 지정할 수가 없게 되어 있습니다. 대신 본문 수정이 불필요하다는 장점이 있긴 합니다.
본문 작성 시 직접 광고 코드를 삽입하는 경우의 문제점은 블로그 본문과 광고코드가 페이지 내에 정적으로 삽입이 된다는 문제가 있습니다. 향후 광고 코드를 수정하거나 제거하려면 본문에 삽입된 모든 코드를 한 땀 한 땀 찾아서 제거하거나 수정하는 수고를 해야 합니다.
Javascript 를 이용한 애드센스 광고 자동 삽입
티스토리 블로그는 순수 Javascript 나 jQuery 와 같은 외부 라이브러리 사용이 허용되어 있습니다. Javascript 를 이용하면 본문 내에 애드센스 광고를 자동으로 삽입하는 작업을 손쉽게 외부에서 처리 가능합니다. 본문의 구조를 분석해서 글의 단락마다 또는 글의 중간 지점 등 원하는 곳에 자동으로 광고를 삽입하는 코드 작성이 가능합니다.
Javascript 를 이용한 광고 삽입의 또 하나의 장점은 나만의 로직 적용이 가능하다는 것입니다. 본문의 내용이 길지 않은 경우는 광고를 삽입하지 않거나 본문의 중간 지점에만 하나의 광고를 사용하거나 글의 상단 1/3 지점과 하단 1/3 지점에 두 개의 광고를 게재한다거나 하는 자신만의 로직 적용이 가능합니다.
스킨 편집 창에서 javascript 를 삽입
애드센스 광고 삽입코드 등록을 위해 블로그 관리자 페이지에서 스킨 편집 화면으로 이동합니다. HTML 탭을 선택 후 페이지 하단으로 스크롤하여 </body> 태그 바로 위에 아래 코드를 삽입합니다.
<!--구글 애드센스 본문 광고 삽입 -->
<div id="google-ad-body" style="display:none">
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle"
style="display:block;"
data-ad-client="ca-pub-6536748512xxxxxx"
data-ad-slot="394098xxxx"
data-ad-format="horizontal"
data-full-width-responsive="false"></ins>
</div>
<script>
/* 본문 광고 삽입 */
var centerPos = $("div.entry-content > div > h3").length / 2;
if(centerPos > 0) {
centerPos = Math.ceil(centerPos);
$('#google-ad-body').show();
$("div.entry-content > div > h3").eq(centerPos).before($('#google-ad-body'));
(adsbygoogle = window.adsbygoogle || []).push({});
} else {
$('#google-ad-body').remove();
}
</script>
위 코드에 적용된 아이디어는 다음과 같습니다.
- 광고 게재용 숨겨진 DIV 엘리먼트를 미리 생성, 위치는 페이지 최하단
- 본문에 사용된 h3 태그의 수를 카운트 (본문 단락을 나누는 기준)
- h3 태그의 수를 절반으로 나누어 광고 삽입 위치로 지정
- 광고 게재용 DIV를 본문 중간의 h3 태그 상단으로 이동시켜 광고 게재
광고 게재용 DIV 생성
애드센스 사이트에서 광고 단위 생성 후 광고단위 코드를 복사하여 수정하시면 됩니다. 광고가 출력될 DIV 엘리먼트를 display:none 속성을 주어 보이지 않도록 생성합니다.
<!--구글 애드센스 본문 광고 삽입 -->
<div id="google-ad-body" style="display:none">
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle"
style="display:block;"
data-ad-client="ca-pub-653674851283xxxx"
data-ad-slot="394098xxxx"
data-ad-format="horizontal"
data-full-width-responsive="false"></ins>
</div>
본문의 중간 위치를 탐색
본문 콘텐츠의 중간위치를 알아내기 위해서 본문에 사용된 <h3> 태그의 수를 카운트했습니다. 저는 본문 작성 시 <h3> 태그를 사용하여 소제목으로 단락을 구분하고 있습니다. 소제목을 사용하지 않거나 <h3> 태그를 사용하시지 않는 경우에는 글 본문의 <p> 태그의 수를 세거나 본문에 삽입된 이미지의 수를 센다거나 하는 방법으로 변경 가능합니다.
/* 방법1 : 본문의 소제목의 수를 카운트 */
var centerPos = $("div.entry-content > div > h3").length / 2;
/* 방법2 : <p> 태그의 수를 카운트 */
var centerPos = $("div.entry-content > div > p").length / 2;
/* 방법3 : <img> 태그의 수를 카운트 */
var centerPos = $("div.entry-content figure > span > img").length / 2;
애드센스 DIV를 본문 중간으로 이동시킨 후 광고 출력
본문의 중간 위치를 찾았으므로 광고 DIV를 해당 위치로 이동시켜서 광고를 출력시키는 코드를 실행합니다.
// 광고 DIV 를 보이게 만들고
$('#google-ad-body').show();
// 광고 DIV 를 중간 위치로 이동
$("div.entry-content > div > h3").eq(centerPos).before($('#google-ad-body'));
// 애드센스 광고 출력
(adsbygoogle = window.adsbygoogle || []).push({});
글 보기 화면이 아닌 경우는 광고 DIV 제거
블로그 홈 화면이나 목록 화면인 경우에는 본문 삽입용 광고는 불필요합니다. 본문 삽입용 광고 DIV를 제거합니다.
// 본문 삽입용 광고 DIV 제거
$('#google-ad-body').remove();
'블로그' 카테고리의 다른 글
티스토리 블로그 발행일자를 과거일자로 수정하기 / 발행시각 감추는 방법 (0) | 2020.07.25 |
---|---|
티스토리 카테고리 링크 구글 애드센스 에러 해결하기 (광고 안보이는 현상) (1) | 2020.07.21 |
티스토리 블로그 이미지 그림자 효과 주기 (0) | 2020.07.18 |
티스토리 블로그 글 목록의 요약내용 수정하기 (0) | 2020.07.17 |
블로그 고화질 사진 이미지 (jpg, png) 파일의 용량을 줄이자 TinyPng (0) | 2020.07.16 |