๋ ์ด์์ ์ํํธ ๋ฌธ์ ํด๊ฒฐํ๊ธฐ: ์ฌ์ฉ์ ๊ฒฝํ๊ณผ SEO ๊ฐ์
๋ ์ด์์ ์ํํธ๋ ์ฌ์ฉ์ ๊ฒฝํ๊ณผ SEO ์ฑ๋ฅ์ ํฐ ์ํฅ์ ๋ฏธ์นฉ๋๋ค. ์ด๋ฌํ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ ์์ธ๊ณผ ํจ๊ณผ์ ์ธ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
๋ ์ด์์ ์ํํธ ์ดํดํ๊ธฐ
๋ ์ด์์ ์ํํธ๋ ํ์ด์ง ๋ก๋ฉ ๊ณผ์ ์์ ์์๋ค์ด ์๊ธฐ์น ์๊ฒ ์ด๋ํ๋ ํ์์ ๋๋ค. ๋์ ๋ ์ด์์ ์ํํธ(CLS) ์งํ๋ ์ด๋ฌํ ์๊ฐ์ ๋ถ์์ ์ฑ์ ์ธก์ ํ๋ฉฐ, Google์ ์ต์ ์ ์ฌ์ฉ์ ๊ฒฝํ์ ์ํด 0.1 ๋ฏธ๋ง์ ์ ์๋ฅผ ๊ถ์ฅํฉ๋๋ค.
๋ ์ด์์ ์ํํธ๊ฐ ๋ฐ์ํ๋ ์ผ๋ฐ์ ์ธ ์ํฉ:
- ํฌ๊ธฐ๊ฐ ์ ์๋์ง ์์ ์ด๋ฏธ์ง ๋ก๋ฉ
- ๋ฆ๊ฒ ๋ก๋๋๋ ์น ํฐํธ๋ก ์ธํ ํ ์คํธ ์ฌ๋ฐฐ์น
- ๋์ ์ฝํ ์ธ ์ฝ์ (๊ด๊ณ , ํ์ ๋ฑ)
- ์๋ํํฐ ๋ฆฌ์์ค๊ฐ ํ์ด์ง ๋ ์ด์์์ ์ํฅ์ ๋ฏธ์น๋ ๊ฒฝ์ฐ
์ฃผ์ ํด๊ฒฐ ๋ฐฉ๋ฒ
1. ์ด๋ฏธ์ง ์ต์ ํ
<img src="hero.jpg" alt="ํ์ด๋ก ์ด๋ฏธ์ง">
<!-- ์ฌ๋ฐ๋ฅธ ์์ -->
<img src="hero.jpg" width="800" height="400" alt="ํ์ด๋ก ์ด๋ฏธ์ง">
์ด๋ฏธ์ง๊ฐ ๋ก๋๋๊ธฐ ์ ์ ๊ณต๊ฐ์ ํ๋ณดํ๊ธฐ ์ํด ํญ์ ์ด๋ฏธ์ง ํฌ๊ธฐ๋ฅผ ์ง์ ํ์ธ์. ์ต์ ๋ธ๋ผ์ฐ์ ๋ ์ข ํก๋น๋ฅผ ์กด์คํ๋ฏ๋ก, CSS๋ฅผ ์ฌ์ฉํ์ฌ ๊ณต๊ฐ์ ์ ์งํ๋ฉด์ ์ด๋ฏธ์ง๋ฅผ ๋ฐ์ํ์ผ๋ก ๋ง๋ค ์ ์์ต๋๋ค:
2. ํฐํธ ๋ก๋ฉ ์ ๋ต
ํฐํธ ๋ก๋ฉ ์ต์ ํ ๋ฐฉ๋ฒ:
- ๋ถ๋๋ฌ์ด ํ ์คํธ ๋ ๋๋ง์ ์ํด font-display: swap ์ฌ์ฉ
- ์ค์ ํฐํธ ๋ฏธ๋ฆฌ ๋ก๋
- ์ด๊ธฐ ๋ ๋๋ง์ ์์คํ ํฐํธ ์ฌ์ฉ ๊ณ ๋ ค
- ์๋น์ค ์์ปค๋ฅผ ์ฌ์ฉํ ํจ๊ณผ์ ์ธ ํฐํธ ์บ์ฑ
3. ์ฝํ ์ธ ๊ณต๊ฐ ๊ด๋ฆฌ
min-height: 250px;
width: 100%;
}
๋์ ์ฝํ ์ธ ๋ฅผ ์ํ ํ:
- ์ต์ ํฌ๊ธฐ๋ก ๊ณต๊ฐ ํ๋ณด
- ์ค์ผ๋ ํค ๋ก๋ฉ ์ํ ๊ตฌํ
- ๋ ์ด์์ ๋ณ๊ฒฝ์ ๋ฐ์์ํค๋ ์์ฑ ๋์ CSS ๋ณํ ์ฌ์ฉ
4. placeholder(ํ๋ ์ด์คํ๋) ๊ตฌํ
if (loading) {
return (
<div className="article-skeleton">
<div className="title-placeholder"></div>
<div className="content-placeholder"></div>
</div>
);
}
return <Article />;
}
์ฑ๋ฅ ์ธก์
CLS ์ ์ ๋ชจ๋ํฐ๋ง ๋๊ตฌ:
- Chrome DevTools ์ฑ๋ฅ ํจ๋
- Lighthouse ๊ฐ์ฌ
- Chrome ์ฌ์ฉ์ ๊ฒฝํ ๋ณด๊ณ ์์ ์ค์ ๋ฐ์ดํฐ
- Web Vitals JavaScript ๋ผ์ด๋ธ๋ฌ๋ฆฌ
์์
- ์์ธก ๋ก๋ฉ
document.head.innerHTML += `
<link rel="preload" href="critical-image.jpg" as="image">
<link rel="preload" href="main-font.woff2" as="font" type="font/woff2" crossorigin>
`;
- ์ฝํ ์ธ ์ฐ์ ์์ํ
<style>
/* ์ค์ CSS ์ธ๋ผ์ธ */
.hero { min-height: 500px; }
</style>
- ๋ฐ์ํ ๊ณต๊ฐ ๊ด๋ฆฌ
contain: layout size;
content-visibility: auto;
}
SEO์ ๋ฏธ์น๋ ์ํฅ
๋ ์ด์์ ์์ ์ฑ ๊ฐ์ ์ ๋ค์๊ณผ ๊ฐ์ ์ด์ ์ ์ ๊ณตํฉ๋๋ค:
- Core Web Vitals ์ ์ ํฅ์
- ํ์ด์ง ๋ญํน ์์น
- ์ฌ์ฉ์ ์ฐธ์ฌ๋ ์ฆ๊ฐ
- ์ดํ๋ฅ ๊ฐ์
- ์ ํ์จ ๊ฐ์
๋ ์ด์์ ์ํํธ๋ ๋จ์ํ ์งํ๊ฐ ์๋ ์ฌ์ฉ์๊ฐ ์ฝํ ์ธ ์ ์ํธ์์ฉํ๋ ๋ฐฉ์์ ์ง์ ์ ์ธ ์ํฅ์ ๋ฏธ์นฉ๋๋ค. ์์ ์ ์ธ ๋ ์ด์์์ ์ ๋ขฐ๋ฅผ ๊ตฌ์ถํ๊ณ ์ฌ์ฉ์๊ฐ ์ฝํ ์ธ ์ ๋ถํธํจ ์์ด ์ฐธ์ฌํ ์ ์๋๋ก ๋ณด์ฅํฉ๋๋ค.
์ด๋ฌํ ์๋ฃจ์ ์ ๊ตฌํํ ํ์๋ CLS ์ ์๋ฅผ ์ง์์ ์ผ๋ก ๋ชจ๋ํฐ๋งํ์ธ์. ์๋ก์ด ์ฝํ ์ธ ๋ ๊ธฐ๋ฅ์ด ์๊ธฐ์น ์์ ์ํํธ๋ฅผ ๋ฐ์์ํฌ ์ ์์ต๋๋ค. ๋ค์ํ ๋๋ฐ์ด์ค์ ์ฐ๊ฒฐ ์๋์์์ ์ ๊ธฐ์ ์ธ ๊ฐ์ฌ์ ํ ์คํธ๋ ์ต์ ์ ์ฑ๋ฅ์ ์ ์งํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
๋ ์ด์์ ์ํํธ๋ฅผ ์ฒด๊ณ์ ์ผ๋ก ํด๊ฒฐํจ์ผ๋ก์จ ๊ธฐ์ ์ ์งํ๋ฅผ ๊ฐ์ ํ ๋ฟ๋ง ์๋๋ผ, ๋ ์ ๋ฌธ์ ์ด๊ณ ์ ๋ขฐํ ์ ์์ผ๋ฉฐ ์ฌ์ฉ์ ์นํ์ ์ธ ์น ๊ฒฝํ์ ๋ง๋ค ์ ์์ต๋๋ค.
์ด๋ฌํ ๊ดํ์ ์ผํ์ฑ ์์ ์ด ์๋ ์ ๊ธฐ์ ์ธ ๊ฐ๋ฐ ์ํฌํ๋ก์ฐ์ ์ผ๋ถ๊ฐ ๋์ด์ผ ํฉ๋๋ค. ์น ๊ธฐ์ ์ด ๋ฐ์ ํจ์ ๋ฐ๋ผ ๋ ์ด์์ ์์ ์ฑ์ ๋ํ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ์ง์์ ์ผ๋ก ์ ๋ฐ์ดํธํ๋ ๊ฒ์ด ๊ณ ํ์ง ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ์งํ๋ ๋ฐ ์ค์ํฉ๋๋ค.