์ ๋์ผ์ค ๊ด๊ณ ์ต์ ํ : ๋ธ๋ก๊ทธ ์ดํ๋ฅ ๋ฐฉ์ง์ ์ ์ฑ ์๋ฐ ์๋ CLS ํด๊ฒฐ ๋ฐฉ๋ฒ
๊ตฌ๊ธ ์ ๋์ผ์ค ์์ต๊ณผ ๋ธ๋ก๊ทธ ํ์ง ๊ฐ์ ๋๋ ๋ง๋ฅผ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ! CLS ๋ฌธ์ ์์ด ๊ด๊ณ ๊ณต๋ฐฑ์ ๋ฐฉ์งํ๊ณ , ๊ด๊ณ ๋ฏธ๋ ธ์ถ๋ก ์ธํ SEO ์ ์ ํ๋ฝ์ ์๋ฐฉํ๋ ๊ด๊ณ ์ต์ ํ ์ ๋ต๊ณผ ์์ ํ ํ๋์ฝ๋ฉ, ์ํ ๊ฐ์งํ ๋ฐฐ๊ฒฝ ์ ๊ฑฐ(Dynamic Overlay Removal) ๊ธฐ์ ๊น์ง ๋ธ๋ก๊ทธ ์์ต , ์ฌ์ฉ์ ๊ฒฝํ(UX), ๊ฒ์์์ง ์ต์ ํ(SEO)๋ฅผ ๋์์ ์ก๋ ๋ฐฉ๋ฒ์ ๊ด๋ จ๋ ์๋ฃ์ ๋๋ค.
๋ธ๋ก๊ทธ ์ด์์์๊ฒ๋ ๊ตฌ๊ธ ์ ๋์ผ์ค ์์ต๊ณผ ๋ธ๋ก๊ทธ ํ์ง ๊ฐ์ ๋๋ ๋ง๊ฐ ํญ์ ๋ฐ๋ผ๋ค๋๋๋ค. ์์ต ์ค์ฌ์ ๊ด๊ณ ์ด์์ ์ฝํ ์ธ ํ์ง๊ณผ ์ฌ์ฉ์ ๊ฒฝํ์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๊ณ , ๊ทธ๋ ๋ค๊ณ ์์ ์ ์ธ ์์ต ๋ชจ๋ธ์ ํฌ๊ธฐํ๊ธฐ๋ ์ด๋ ต๊ธฐ ๋๋ฌธ์ ๋๋ค.
์ด๋ฌํ ๋๋ ๋ง ์์๋ ๊ธฐ์ ์ ์ธ ๊ด๊ณ ์ต์ ํ ๋ฌธ์ ๋ ์กด์ฌํฉ๋๋ค.
์๋ฅผ ๋ค์ด, ๊ด๊ณ ์์ต์ ๋์ด๊ธฐ ์ํด ๋ ธ์ถ ๋น์ค์ ์น์คํ๊ฒ ๋๋ฉด ๊ฒ์ ์์ง ์ต์ ํ(SEO)์ ๋ถ์ ์ ์ธ ์ํฅ์ ๋ฏธ์น๊ณ , ๋ฐ๋๋ก ๊ฒ์ ์ต์ ํ ์งํ์ธ LCP๋ CLS๋ฅผ ์ฐ์ ํ๋ฉด ๊ด๊ณ ๋ ธ์ถ๊ณผ ํด๋ฆญ๋ฅ (CTR)์ ์ ์ฝ์ด ๋ฐ์ํฉ๋๋ค.
์ค๋์ ์์ตํ ๋ธ๋ก๊ทธ ์ด์์ ์ํ ๊ด๊ณ ์ SEO ์ฌ์ด์ ๋๋ ๋ง ํ์์ ๋ํด ์ด์ผ๊ธฐํ๊ณ ์ ํฉ๋๋ค.
๋ํ์ ์ธ ๊ตฌ๊ธ ์ ๋์ผ์ค ๊ด๊ณ ๋ ธ์ถ ์ค๋ฅ๋ฐ ํด๊ฒฐ ๋ฐฉ๋ฒ ์ ๋ฆฌ
์ฐ์ ์ ๋์ผ์ค ๊ด๊ณ ์ค๋ฅ์ ๋ํด ์์๋ณด๊ณ ๋ณธ๋ก ์ผ๋ก ๋ค์ด๊ฐ๊ฒ ์ต๋๋ค
์ ๋์ผ์ค์์ ๊ด๊ณ ๊ฐ ๋ ธ์ถ๋์ง ์๋ ์ฃผ์ ์ด์ ๋ ํฌ๊ฒ ๋ค ๊ฐ์ง ๊ธฐ์ ์ ์์ธ์ผ๋ก ๋๋ ์ ์์ต๋๋ค.
๋จผ์ ์ ๋์ผ์ค ์ธํ๋(AdSense Unfilled) ์ค๋ฅ๋ ์ฃผ๋ก ํ์ด์ง ๋ ์ด์์์ด๋ ๊ตฌ์กฐ์์ ๋ฌธ์ ๋ก ์ธํด ๊ด๊ณ ์ฌ๋กฏ์ด ์ฑ์์ง์ง ์์ ๋ ๋ฐ์ํ๋ฉฐ, ๊ด๊ณ ์์(No Ad Available) ์ค๋ฅ๋ ํ์ฌ ํ์ด์ง์ ๋ฌธ๋งฅ์ ๋ง๋ ๊ด๊ณ ์ธ๋ฒคํ ๋ฆฌ๊ฐ ๋ถ์กฑํ ๋ ๋ํ๋ฉ๋๋ค.
๋ค๋ง ์ต๊ทผ์๋ ์ธ๋ฒคํ ๋ฆฌ ๋ถ์กฑ ํ์์ด ์ฝํ ์ธ ๊ฐ์น๊ฐ ๋ฎ์(์ ํ์ง)์ผ๋ก ํ์ ๋๊ฑฐ๋ ์ ์ฑ ์๋ฐ๊ณผ ๊ด๋ จ๋ ๊ฒฝ์ฐ๋ ๋ง์ผ๋ฏ๋ก, ์ด๋ฐ ์ค๋ฅ๊ฐ ์ง์๋๋ฉด ํฌ์คํ ์ ํ ์คํธ ์๊ณผ ๋ ์ฐฝ์ ์ธ ํ์ง์ ๋ฐ๋์ ์ ๊ฒํด์ผ ํฉ๋๋ค.
๋ํ ๋ชจ๋ฐ์ผ ์ต์ ํ์ ํต์ฌ์ธ ๋ทฐํฌํธ ์ค๋ฅ(Viewport Too Small)๋ ์์ ์ค๋งํธํฐ ํ๋ฉด์์ ๊ด๊ณ ์ฌ๋กฏ์ด ํ๋ฉด ๋ฐ์ผ๋ก ๋ฒ์ด๋๊ฑฐ๋ ๊ฐ์ ์์ญ์ด ๋๋ฌด ์๊ฒ ์ค์ ๋ ๋ ๋ฐ์ํ๋ฉฐ, ๊ตฌ๊ธ ๋ด์ด ์ด๋ฅผ ์ ์์ ์ธ ๊ด๊ณ ๋ ธ์ถ๋ก ์ธ์ ํ์ง ์์ต๋๋ค.
๋ฐ๋ผ์ ๋ฐ์ํ ๊ด๊ณ ๋จ์์ ์ต์ ๋
ธ์ถ ์์ญ์ ํ๋ณดํ๋ ๊ฒ์ด ์ค์ํ๋ฉฐ, ๊ธฐ์ ์ ์ผ๋ก CSS์ display: none; ์์ฑ์ ์ฌ์ฉํ์ฌ ๊ด๊ณ ๋ฅผ ์จ๊ฒผ๋ค๊ฐ ๋ํ๋๊ฒ ํ๋ ๋ฐฉ์์ ๊ตฌ๊ธ ์ ๋์ผ์ค ์ ์ฑ
์๋ฐ ๋ฆฌ์คํฌ๊ฐ ๋งค์ฐ ํฌ๋ฏ๋ก ๊ฐ๋ณํ ์ฃผ์ํด์ผ ํฉ๋๋ค.
๋ง์ง๋ง์ผ๋ก ํํ ๋ฐ์ํ๋ ์๋ฐ์คํฌ๋ฆฝํธ ์ค๋ฅ(JS Error: adsbygoogle.push)๋ ๊ด๊ณ ์ฝ๋๊ฐ ํ ํ์ด์ง ๋ด์์ ์ฌ๋ฌ ๋ฒ ์ค๋ณต ํธ์ถ๋๊ฑฐ๋ ์ถฉ๋ํ ๋ ๋ฐ์ํฉ๋๋ค. ์ด๋ฅผ ๋ฐฉ์งํ๋ ค๋ฉด adsbygoogle.js ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ HTML ํค๋์ ๋จ ํ ๋ฒ๋ง ํฌํจํ๊ณ , ๊ฐ๋ณ ๊ด๊ณ ์ฌ๋กฏ์๋ ins ํ๊ทธ์ push() ์คํ ์ฝ๋๋ง ๋ฃ๋ ๊ฒ์ด ๊ฐ์ฅ ์์ ํ๊ณ ๊น๋ํ ์ ๋์ผ์ค ์ค์น ๋ฐฉ๋ฒ์
๋๋ค.
| ์ ๋์ผ์ค ์ค๋ฅ ์ข ๋ฅ | ๋ฐ์ ์์ธ | ์ฃผ์ ์ฆ์ | ๊ธฐ์ ์ ํด๊ฒฐ ๋ฐฉ๋ฒ |
|---|---|---|---|
| AdSense Unfilled (์ธํ๋) | ๊ด๊ณ ์ฝ์ ๊ณต๊ฐ ๋ถ์กฑ, ํ์ด์ง ๊ตฌ์กฐ์ ๊ด๊ณ ํฌ๊ธฐ ๋ถ์ผ์น | ์์ญ์ ์์ผ๋ ๊ด๊ณ ๋ฏธํ์, ์ฝ์์ Unfilled ๋ฉ์์ง | ์ฌ๋กฏ ํฌ๊ธฐ ๊ณ ์ ํ์ธ, CSS ๋ ์ด์์ ์ ๊ฒ, ์ต์ ๊ฐ์ ์์ญ ํ๋ณด |
| No Ad Available (๊ด๊ณ ์์) | ์๋ฒ ๋ด ์ ํฉํ ๊ด๊ณ ๋ฌผ๋ ๋ถ์กฑ | ์์ญ์ด ๋น์ด ์์, ์ฝ์์ No ad available ํ์ | ๊ด๊ณ ํ์ ๋ค์ํ, ์ฝํ ์ธ ๊ด๋ จ์ฑ ๊ฐํ, ๋์ฒด ๊ด๊ณ ๋จ์ ํ ์คํธ |
| JS Error (์คํฌ๋ฆฝํธ ์ค๋ฅ) | ์คํฌ๋ฆฝํธ ๋ฏธ๋ก๋ ๋๋ ํ ์คํฌ๋ฆฝํธ์ ์ถฉ๋ | ๊ด๊ณ ๋ฏธ์ก์ถ, adsbygoogle.push ๊ด๋ จ ์๋ฌ | async/defer ์ค์ ํ์ธ, ์ค๋ณต ์คํฌ๋ฆฝํธ ์ ๊ฑฐ ๋ฐ ์ถฉ๋ ์ ๊ฒ |
| Viewport Too Small (๋ทฐํฌํธ ์ค๋ฅ) | ๋ชจ๋ฐ์ผ ๋ทฐํฌํธ ๋๋น ๊ด๊ณ ์ฌ๋กฏ ์์ญ ๋ถ์กฑ | ์์ฒญ์ ๊ฐ์ง๋ง ์ค์ ๋ ธ์ถ๋ก ์นด์ดํธ ์ ๋จ | ๋ฐ์ํ ๊ด๊ณ ์ต์ ํ, ๋ชจ๋ฐ์ผ ์ต์ ๋ ธ์ถ ๋์ด ํ๋ณด |
์ด๋ฌํ ๊ธฐ์ ์ ์ค๋ฅ๋ค์ ๋๋ถ๋ถ ํด๊ฒฐ์ด ๊ฐ๋ฅํฉ๋๋ค. ์ง์ง ๋ฌธ์ ๋ ์ค๋ฅ ๋ฐ์ ์ ์ด์ด์ง๋ ๊ด๊ณ ๋ฏธ๋ ธ์ถ๋ก ์ธํ SEO ์ต์ ํ ์ ์ ํ๋ฝ์ ๋๋ค.
์ฆ, ๊ด๊ณ ๊ฐ ๋ฐฐ์น๋ ์์น์ ์ค์ ๊ด๊ณ ๊ฐ ๋ํ๋์ง ์๋ ์๊ฐ, ๊ตฌ๊ธ ์์น ์ฝ์์ ํต์ฌ ์น ์งํ(Core Web Vitals)์์ ๊ฐ์ฅ ์ค์ํ๊ฒ ์ฌ๊ธฐ๋ CLS(Cumulative Layout Shift, ๋์ ๋ ์ด์์ ์ด๋) ์ ์๊ฐ ๋ถ๊ดด๋ ์ ์์ต๋๋ค. ๋ธ๋ก๊ทธ์ ๋๋ถ๋ถ์ CLS ๋ฌธ์ ๋ ๊ด๊ณ ๋ก๋ฉ ์ง์ฐ๊ณผ ๋น ๊ณต๊ฐ ๋๋ฌธ์ ๋ฐ์ํ๋ค๊ณ ๋ด๋ ๋ฌด๋ฐฉํฉ๋๋ค.
์ด ๋ฌธ์ ์ ํต์ฌ์ ์ธ ํด๊ฒฐ์ฑ ์ ๊ด๊ณ ์์ญ์ CSS ํ๋์ฝ๋ฉ(Hard Coding)์ผ๋ก ๋ฏธ๋ฆฌ ํ๋ณดํ๋ ๊ฒ์ ๋๋ค. ์ด๋ ๊ฒ ๊ด๊ณ ๊ฐ ๋ค์ด์ฌ ์๋ฆฌ๋ฅผ ๋ฏธ๋ฆฌ ์ก์๋๋ฉด ๋ก๋ฉ ์ ๋ณธ๋ฌธ์ด ๋ฐ๋ฆฌ๋ ํ์์ ๋ง์ ๋๋ถ๋ถ์ CLS ๋ฌธ์ ๋ฅผ ์์ฃผ ์ฝ๊ฒ ํด๊ฒฐํ ์ ์์ต๋๋ค. ์ ์ญ์ ํฐ์คํ ๋ฆฌ ๋ธ๋ก๊ทธ์ ๋๋ถ๋ถ์ CLS๋ฅผ ์ด ๋ฐฉ๋ฒ์ผ๋ก ์ก๊ธฐ ๋๋ฌธ์ ์ถ์ฒํ๋ ๋ฐฉ์์ ๋๋ค.
ํ์ง๋ง ๊ด๊ณ ์ฌ๋กฏ์ ๋ค๋ฅธ ์ผ๋ฐ ๋์์ธ ์์์ ๋ฌ๋ฆฌ, ์์ญ์ ๊ฐ์ ๋ก ๊ณ ์ ํ๋ฉด ๋ ๋ค๋ฅธ ์ดํ๋ฅ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค.
์๋์์๋ ์ด์ ๊ด๋ จ๋ ๊ธฐ์ ์ ์ด์์ ๋์ ๋ฐฉ๋ฒ์ ๋๋ค.
1. ๊ด๊ณ ์์ญ ๊ณ ์ ๋ฐ ํ๋ ์ฝ๋ฉ ๋ฐฉ์์ ์ฅ๋จ์
์ ๋์ผ์ค ์๋๊ด๊ณ ๊ฐ ์๋ ๋ธ๋ก๊ทธ ์์ต๊ณผ ๊ฒ์์ต์ ํ(SEO)๋ฅผ ์ํด ํ ๋ง์ HTML/CSS ๊ตฌ์กฐ ์์ ์ง์ ๊ด๊ณ ๋ฅผ ์ ์ฉํ๋ ์๋๊ด๊ณ ( ์ ๋์ผ์ค ํ๋ ์ฝ๋ฉ)๋ฐฉ์์ ๋ช ํํ ์ฅ๋จ์ ์ ๊ฐ์ง๊ณ ์์ต๋๋ค.
์ฅ์ : ์ฌ์ฉ์ ๊ฒฝํ(UX) ๋ฐ ์๊ฐ์ ์์ ์ฑ ๊ฐํ
- ๋ ์ด์์ ์ ์ง ๋ฐ CLS ๋ฐฉ์ง:๊ด๊ณ ๊ฐ ๋ก๋๋๊ธฐ ์ ๋์ด(height)๋ฅผ ๋ฏธ๋ฆฌ ํ๋ณดํ์ฌ, ๊ด๊ณ ๋ก๋ฉ ์ ๋ณธ๋ฌธ ํ ์คํธ๊ฐ ์๋๋ก ํญ ๋จ์ด์ง๋ ๋ ์ด์์ ์ํํธ ํ์์ ์์ฒ์ ์ผ๋ก ์ฐจ๋จํฉ๋๋ค. ๋ํ ์ฝํ ์ธ ์ ๋ถํฉํ ์ด์์ ๊ด๊ณ ์ ๋ต์ ์ ์ฉํ๋ฉด, ์ด๋ ๊ตฌ๊ธ ์์น ์ฝ์์ ์ฌ์ฉ์ ๊ฒฝํ(UX) ์งํ์ ๋งค์ฐ ๊ธ์ ์ ์ธ ์ํฅ์ ์ค๋๋ค.
๋จ์ : ์ฝํ ์ธ ํ๋ฆ ์ ํด์ ๋ธ๋ก๊ทธ ์ดํ๋ฅ ์์น
- ์ฌ์ฉ์ ์ดํ๋ฅ ๊ณผ ๋์์ธ์ ์ด์ํจ: ์๋ ๊ด๊ณ ๋ ๊ด๊ณ ๊ฐ ๋ฏธ๋ ธ์ถ๋ ๊ฒฝ์ฐ ์๋์ผ๋ก ๊ด๊ณ ๊ณต๊ฐ์ด ์ฌ๋ผ์ง์ง๋ง(CLS ๋ฐ์์ ์ฃผ์ ์์ธ), ํ๋์ฝ๋ฉ ๋ฐฉ์์ ๊ด๊ณ ๊ฐ ๋ฏธ๋ ธ์ถ๋๋ฉด ์ฝํ ์ธ ์ค๊ฐ์ 250~300px ์ ๋์ ํฐ ๋น ๊ณต๋ฐฑ์ด ์๊น๋๋ค. ์ด๋ก ์ธํด ๋ ์๋ ํฌ์คํ ์ด ๋๋ ๊ฒ์ผ๋ก ์คํดํ๊ฑฐ๋ ์ง์ค๋๊ฐ ๊ธ๊ฒฉํ ๋จ์ด์ ธ ํ์ด์ง๋ฅผ ๋ ๋๊ฒ ๋ฉ๋๋ค.

๊ด๊ณ ๋ฏธ๋ ธ์ถ ๋น ๊ณต๊ฐ(Blank Space) ๋์ ๋ฐฉ๋ฒ
๋ธ๋ก๊ทธ ์ ์ฒด ํ์ง๊ณผ ์ ๋ณด ์ ๊ทผ์ฑ์ ์ํฅ์ ์ฃผ๋ ๊ด๊ณ ๋ฏธ๋ ธ์ถ ์ ๋ฐ์ํ๋ ํ์ดํธ ์คํ์ด์ค(๋น ๊ณต๊ฐ)์ ๋์ํ๊ธฐ ์ํด ํํ ์ด๋ฏธ์ง๋ ๋์ฒด ์ฝํ ์ธ ๋ฅผ ์ฝ์ ํ๋ ๋ฐฉ๋ฒ์ ๊ณ ๋ คํฉ๋๋ค.
๊ทธ๋ฌ๋ ์ด๋ฌํ ๋ณด์ ๋ฐฉ์์ ์์นซ ์ ๋์ผ์ค ์ ์ฑ ์๋ฐ ๋ฐ ๊ณ์ ์ ์ง ์ฌ์ ์ ์ถฉ๋ํ ์ ์๋ ์ํ ์์๊ฐ ์์ต๋๋ค.
๊ด๊ณ ๊ฒน์นจ(Overlapping Ads) ์ ์ฑ ์๋ฐ ์ฃผ์์ฌํญ
์๋ ๋ด์ฉ์ ์ ๋์ผ์ค ๊ด๊ณ ๊ฐ ์ก์ถ๋์ง ์์ ๋ ๋น ์๋ฆฌ๋ฅผ ๋ฉ์ฐ๊ธฐ ์ํด ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง๋ ๋์ฒด ๋ฐฐ๋ ์ฝํ ์ธ ๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ, ๊ตฌ๊ธ ์ ์ฑ ์๋ฐ์ ํด๋นํ ์ ์๋ ํต์ฌ ์ฒดํฌ๋ฆฌ์คํธ์ ๋๋ค.
.
๊ตฌ๊ธ์ด ์ฃผ์ฅํ๋ ์ ๋์ผ์ค ์ ์ฑ ํต์ฌ ์ทจ์ง!
๊ตฌ๊ธ์ด ์ต์ฐ์ ๊ฐ์น๋ก ์ผ๋ ๊ฒ์ '์ฌ์ฉ์์ ์ฌ๋ฐ๋ฅธ ๊ฒฝํ(UX)'๊ณผ '๊ด๊ณ ์ฃผ์ ๋ง์ผํ ๊ฐ์น ๋ณดํธ'์ ๋๋ค. ๊ด๊ณ ์์ญ ์์ ์ด๋ฏธ์ง, ๋์์, ํ ์คํธ๊ฐ ์กฐ๊ธ์ด๋ผ๋ ๊ฒน์น๋ ๊ฒ์ ์๊ฒฉํ ๊ธ์งํ๋ ์ด์ ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- ๊ด๊ณ ๊ฐ๋ ์ฑ ๋ฐ ๊ฐ์์ฑ ํ๋ณด: ํ๋ คํ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง์ ๊ด๊ณ ๊ฐ ๊ฒน์น๋ฉด ๋ฌธ๊ตฌ๋ ์ํ ์ด๋ฏธ์ง๊ฐ ์๊ณก๋์ด ๊ด๊ณ ์ฃผ์ ๋ฉ์์ง ์ ๋ฌ๋ ฅ์ด ์ฌ๊ฐํ๊ฒ ํผ์๋ฉ๋๋ค.
- ๋ถ์ ํด๋ฆญ ๋ฐ ์ ํจํ์ง ์์ ํด๋ฆญ ๋ฐฉ์ง: ์ฌ์ฉ์๊ฐ ๋ฐฐ๊ฒฝ ์ฝํ ์ธ (์: ๊ฐ์ง ์ฌ์ ๋ฒํผ, ๋ซ๊ธฐ ๋ฒํผ ๋ฑ)๋ฅผ ์ด์ฉํ๋ ค๋ค ์ค์๋ก ๊ด๊ณ ๋ฅผ ํด๋ฆญํ๊ฒ ๋๋ '์ฐ๋ฐ์ ํด๋ฆญ' ์ ๋๋ ๊ฐ๋ ฅํ ์ ์ฌ ๋์์ ๋๋ค.
- ์ธ์์ ์ธ ์์ ์ ๋ ๋ฐ ํด๋ฆญ ๊ฐ์ ๊ธ์ง: ์๊ทน์ ์ธ ํ์ดํ๋ ํ๋ คํ ์์๋ก ์ฌ์ฉ์์ ์์ ์ ๊ฐ์ ๋ก ๊ด๊ณ ์ชฝ์ผ๋ก ์ ์ธํ๋ ํ์๋ ์ด์ ๊ท์ ์๋ฐ์ ๋๋ค.
โ ์ ์ฑ ์๋ฐ ์ ๋ฐ์ํ๋ ์ฃผ์ ์ ์ฌ ์ฌํญ
- ์ ๋์ผ์ค ๊ณ์ ์ ์ง ๋ฐ ์์ต๊ธ ๋ชฐ์: ์ ์ฑ ์๋ฐ ์ ๋ฐ ์ ๊ฒฝ๊ณ ํ ๊ด๊ณ ์ก์ถ์ด ์ฆ์ ์ค๋จ๋ ์ ์์ผ๋ฉฐ, ์ฌ๊ฐํ ๊ฒฝ์ฐ ๊ณ์ ์๊ตฌ ์ ์ง ๋ฐ ์ง๊ธ ๋๊ธฐ ์ค์ธ ์์ต๊ธ์ด ๋ชฐ์๋ ์ ์์ต๋๋ค.
- ๊ด๊ณ ์ฃผ ์ ๋ขฐ๋ ํ๋ฝ ๋ฐ ํด๋ฆญ๋น ๋จ๊ฐ(CPC) ๊ธ๋ฝ: ์ค์๋ ๋ฌดํจ ํด๋ฆญ์ด ๋ง์์ง๋ฉด ์๊ณ ๋ฆฌ์ฆ์ด ํด๋น ์ฌ์ดํธ์ ๊ด๊ณ ํ์ง์ด ๋ฎ๋ค๊ณ ํ๋จํ์ฌ CPC ๋จ๊ฐ๋ฅผ ํ์ ํ ๋ฎ์ถ๊ฒ ๋ฉ๋๋ค.
- ๋ธ๋ก๊ทธ ์ ํ์ง ํ์ ๋ฐ ์ฌ์ดํธ ์ ๋ขฐ๋ ์ ํ: ๋ฐฉ๋ฌธ์๋ ๊ด๊ณ ์ ๋ณธ๋ฌธ์ด ํผ๋์ค๋ฝ๊ฒ ๋ค์์ธ ์ฌ์ดํธ๋ฅผ '์ ํ์ง ์คํธ ๋ธ๋ก๊ทธ'๋ก ์ธ์ํ์ฌ ์ฌ๋ฐฉ๋ฌธ์ ํ์ง ์๊ฒ ๋ฉ๋๋ค.
3. ์ ๋์ผ์ค ๊ด๊ณ ๋ฌธ์ ์ต์ข ๋์๋ฐฉ๋ฒ
์ํ ๊ฐ์งํ ๋ฐฐ๊ฒฝ ์ ๊ฑฐ' (Dynamic Overlay Removal)
ํ์กดํ๋ ๊ฐ์ฅ ์ค๋งํธํ๊ณ ์์ ํ ํด๊ฒฐ์ฑ ์ ๊ด๊ณ ๊ฐ ์ถ๋ ฅ๋๊ธฐ ์ ๊น์ง๋ง ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง๋ ์ฝํ ์ธ ๋ฅผ ๋ณด์ฌ์ฃผ๋ค๊ฐ, ๊ด๊ณ ๋ก๋ฉ์ด ํ์ธ๋๋ ์ฆ์ ๋ฐฐ๊ฒฝ ์์๋ฅผ ํ๊ดด(์ ๊ฑฐ)ํ๋ ๊ธฐ์ ์ ์ ๊ทผ ๋ฐฉ์์ ๋๋ค.
์๋ ์๋ฆฌ (Technical Mechanism)
- ๊ด๊ณ ์ฌ๋กฏ ์์ญ ํ๋ณด: CSS๋ฅผ ํตํด ๊ด๊ณ ์ฌ๋กฏ์ ๊ฐ๋ก 1200px, ์ธ๋ก 250~300px์ div ๋ฐ์ค๋ฅผ ๋ฏธ๋ฆฌ ์์ฑํ์ฌ CLS ์์น๋ฅผ ๋ฐฉ์ดํฉ๋๋ค.
- ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง ์ ์ถ๋ ฅ: ์ค์ ๊ด๊ณ ๊ฐ ๋ก๋๋๊ธฐ ์ ๊น์ง๋ ๋ธ๋ก๊ทธ ๋์์ธ๊ณผ ์ด์ฐ๋ฌ์ง๋ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง๋ฅผ ๋จผ์ ๋ณด์ฌ์ค๋๋ค.
- ์ํ ์ค์๊ฐ ๋ชจ๋ํฐ๋ง: ์๋ฐ์คํฌ๋ฆฝํธ์ MutationObserver API ๊ธฐ๋ฅ์ ํ์ฉํ์ฌ ์ ๋์ผ์ค ๊ด๊ณ ํ๊ทธ์ ์ํ ๊ฐ(
data-ad-status)์ ์ค์๊ฐ์ผ๋ก ๊ฐ์ํฉ๋๋ค. - ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง ์ฆ์ ์ ๊ฑฐ ๋ก์ง: ๊ด๊ณ ์๋ฒ๋ก๋ถํฐ ์๋ต์ด ์์ ๊ด๊ณ ๊ฐ ์ฑ๊ณต์ ์ผ๋ก ์ฑ์์ง๋(filled) ์ฐฐ๋์ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง๋ฅผ
display: none;๋๋ ์ ๊ฑฐ ์ฒ๋ฆฌํ์ฌ ์ ์ฑ ์๋ฐ ์์ง๋ฅผ 0%๋ก ์ฐจ๋จํฉ๋๋ค. - ์ด๋ฏธ์ง ์ ๊ฑฐ ์คํจ ๋๋น ์์ธ ์ฒ๋ฆฌ: ๋ง์ฝ ์คํฌ๋ฆฝํธ ์ค๋ฅ๋ก ์ด๋ฏธ์ง ์ ๊ฑฐ๊ฐ ์คํจํ ์ํฉ์ ๋๋นํ์ฌ, ์ค์ ๊ด๊ณ ์ ๋๋ณด๋ค ์์ ์ฌ์ด์ฆ์ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง๋ฅผ ์ ์ฉํด ๋ฌผ๋ฆฌ์ ์ธ ๊ฒน์นจ ํ์์ ๋ฐฉ์ดํฉ๋๋ค.
ํน์ ๋ค๋ฅธ ๊ด๊ณ ์ต์ ํ ์๋ฃจ์ ์ ์๊ณ ๊ณ์ ๋ถ๋ค์ ํจ๊ป ์๊ฒฌ์ ๊ณต์ ํด ์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋ค.
์ฐธ๊ณ ํ ์ฝ๋
1. HTML์ฝ๋
๊ด๊ณ 3๊ฐ๋ฅผ ์ ์ฉํ๋ ์์ ์ฝ๋์ ๋๋ค.
div class="adstop" id="ad-top-slot"
div class="ad-image-wrapper"
ins class="adsbygoogle"
style="display:block;width:100%;min-height:250px"
data-ad-client="ca-pub-0000000000000000"
data-ad-slot="1111111111"
data-ad-format="auto"
data-full-width-responsive="true"/ins
/div
/div
div class="adstop" id="ad-middle-slot"
div class="ad-image-wrapper"
ins class="adsbygoogle"
style="display:block;width:100%;min-height:250px"
data-ad-client="ca-pub-0000000000000000"
data-ad-slot="2222222222"
data-ad-format="auto"
data-full-width-responsive="true"/ins
/div
/div
div class="adstop" id="ad-bottom-slot"
div class="ad-image-wrapper"
ins class="adsbygoogle"
style="display:block;width:100%;min-height:250px"
data-ad-client="ca-pub-0000000000000000"
data-ad-slot="3333333333"
data-ad-format="auto"
data-full-width-responsive="true"/ins
/div
/div
2. CSS์ฝ๋
style
style
/* ๊ธฐ๋ณธ ๋ ์ด์์ ๋ฐ ๋์ด ๊ฐ์ ์ค์ */
.adstop, .ad-image-wrapper, .adsbygoogle {
min-height: 250px !important;
display: block !important;
}
.ad-image-wrapper {
height: 250px !important;
background-size: cover;
background-position: center;
background-repeat: no-repeat;
transition: opacity 0.3s ease;
}
/* ๊ฐ ์ฌ๋กฏ๋ณ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง (๊ฒฝ๋ก๋ ๋ณธ์ธ์ ํฐ์คํ ๋ฆฌ ๊ฒฝ๋ก ์ ์ง) */
#ad-top-slot .ad-image-wrapper {
background-image: url('https://tistory1.daumcdn.net/tistory/๋์ฒด ์ด๋ฏธ์ง ๊ฒฝ๋ก');
}
#ad-middle-slot .ad-image-wrapper {
background-image: url('https://tistory1.daumcdn.net/tistory/๋์ฒด ์ด๋ฏธ์ง ๊ฒฝ๋ก');
}
#ad-bottom-slot .ad-image-wrapper {
background-image: url('https://tistory1.daumcdn.net/tistory/๋์ฒด ์ด๋ฏธ์ง ๊ฒฝ๋ก');
}
/style
/style
3. ์๋ฐ์คํฌ๋ฆฌํธ ์ฝ๋
script
(function(){
"use strict";
if(!document.querySelector('script[src*="adsbygoogle.js"]')){
var s = document.createElement('script');
s.async = true;
s.src = 'https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-000000';
s.crossOrigin = 'anonymous';
document.head.appendChild(s);
}
var adContainers = document.querySelectorAll('.adstop');
adContainers.forEach(function(container){
var wrapper = container.querySelector('.ad-image-wrapper');
var ins = container.querySelector('ins.adsbygoogle');
if(!wrapper || !ins) return;
// ๊ด๊ณ push
try {
if(!ins.hasAttribute('data-ad-status')){
(window.adsbygoogle = window.adsbygoogle || []).push({});
}
} catch(e){}
var observer = new MutationObserver(function(){
var status = ins.getAttribute('data-ad-status');
if(status === 'filled'){
// ๊ด๊ณ ๊ฐ ๋์์ผ๋ฉด ๋ฐฐ๊ฒฝ ์ ๊ฑฐ, wrapper ๋ณด์ด๊ฒ
wrapper.style.backgroundImage = 'none';
wrapper.style.opacity = '1';
observer.disconnect();
}
else if(status === 'unfilled'){
// ๊ด๊ณ ๊ฐ ์์ผ๋ฉด ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง ์ ์งํ๊ณ ๋์ด ๋ณด์ฅ
wrapper.style.opacity = '1';
wrapper.style.display = 'block';
wrapper.style.minHeight = '250px';
wrapper.style.height = '250px';
// ins ์์๋ ๋์ด ์ ์ง
ins.style.display = 'block';
ins.style.minHeight = '250px';
ins.style.height = '250px';
observer.disconnect();
}
});
observer.observe(ins, { attributes: true, attributeFilter: ['data-ad-status'] });
// ์์ ์ฅ์น: 5์ด ํ ์ํ ํ์ธ ํ ์ฒ๋ฆฌ
setTimeout(function(){
var status = ins.getAttribute('data-ad-status');
// ์ํ๊ฐ ์๊ฑฐ๋ unfilled๋ฉด ์ด๋ฏธ์ง ๋
ธ์ถ ํ์
if(!status || status === 'unfilled') {
wrapper.style.opacity = '1';
wrapper.style.display = 'block';
wrapper.style.minHeight = '250px';
wrapper.style.height = '250px';
ins.style.display = 'block';
ins.style.minHeight = '250px';
ins.style.height = '250px';
}
observer.disconnect();
}, 5000);
});
// ์ถ๊ฐ: ๊ด๊ณ ์คํฌ๋ฆฝํธ๊ฐ ๋์ด๋ฅผ 0์ผ๋ก ๋ง๋๋ ๊ฒ์ ๋ฐฉ์ดํ๋ ํจ์
function protectAdHeight() {
adContainers.forEach(function(container){
var wrapper = container.querySelector('.ad-image-wrapper');
var ins = container.querySelector('ins.adsbygoogle');
if(!wrapper || !ins) return;
// ๋์ด๊ฐ 10px ๋ฏธ๋ง์ด๋ฉด ๊ฐ์ ๋ก 250px๋ก ์ค์
if(wrapper.offsetHeight 10) {
wrapper.style.minHeight = '250px';
wrapper.style.height = '250px';
wrapper.style.display = 'block';
}
if(ins.offsetHeight 10) {
ins.style.minHeight = '250px';
ins.style.height = '250px';
ins.style.display = 'block';
}
});
}
// ์ฃผ๊ธฐ์ ์ผ๋ก ๋์ด ๋ณดํธ
setInterval(protectAdHeight, 1000);
})();
/script