Skip to content
SEO/seo-resources

검색 μ΅œμ ν™”μ—μ„œ 점수 ν•˜λ½ 없이 유튜브 λ™μ˜μƒ μž¬μƒλ°©λ²•

μ„œλ“œνŒŒν‹° μΏ ν‚€ 문제λ₯Ό ν•΄κ²°ν•˜λŠ” 유튜브 λ™μ˜μƒ νŒμ—…μ°½ μž¬μƒ 방법

유튜브 λ™μ˜μƒ μ‚½μž… μ‹œ λ°œμƒν•˜λŠ” μ„œλ“œνŒŒν‹° μΏ ν‚€ 문제λ₯Ό ν•΄κ²°ν•˜κ³  PageSpeed Insights μ„±λŠ₯ 점수λ₯Ό 100점으둜 μ΅œμ ν™”ν•˜λŠ” νŒμ—…μ°½ μž¬μƒ 슀크립트 μ½”λ“œλ₯Ό κ³΅κ°œν•©λ‹ˆλ‹€. Core Web Vitals 점수 μœ μ§€μ™€ μ‚¬μš©μž κ²½ν—˜(UX) κ·ΉλŒ€ν™”λ₯Ό μœ„ν•œ 유튜브 μ΅œμ ν™” μž¬μƒ 방법과 HTML, CSS, JavaScript μ½”λ“œ κ΅¬ν˜„ 방법을 μ•ˆλ‚΄ν•©λ‹ˆλ‹€.

1. 유튜브 λ™μ˜μƒ μ‚½μž…μ˜ 함정: μ„œλ“œνŒŒν‹° 쿠킀와 SEO μ„±λŠ₯ μ €ν•˜ 문제

λΈ”λ‘œκ·Έ ν¬μŠ€νŒ…μ—μ„œ 유튜브 λ™μ˜μƒ μž¬μƒ 방법을 μ–΄λ–»κ²Œ κ΅¬μ„±ν•˜λŠλƒμ— 따라 νŽ˜μ΄μ§€μ˜ 검색 μ—”μ§„ μ΅œμ ν™”(SEO) μ μˆ˜μ™€ μ‚¬μš©μž κ²½ν—˜(UX)에 큰 영ν–₯을 λ―ΈμΉ  수 μžˆμŠ΅λ‹ˆλ‹€. ν•˜μ§€λ§Œ λ‹¨μˆœνžˆ 유튜브 링크λ₯Ό μ‚½μž…ν•˜κ±°λ‚˜ iframe μ½”λ“œλ₯Ό λΆ™μ—¬ λ„£λŠ” 기쑴의 방식은 생각보닀 큰 문제λ₯Ό μ•ΌκΈ°ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

λ°”λ‘œ μ„œλ“œνŒŒν‹° μΏ ν‚€(Third-Party Cookies) 문제 λ•Œλ¬Έμž…λ‹ˆλ‹€. 일반적인 유튜브 μ‚½μž… 방식은 μ™ΈλΆ€ 도메인인 youtube.com λ˜λŠ” youtu.be의 μΏ ν‚€λ₯Ό 뢈러였게 되며, μ΄λŠ” μ„±λŠ₯ μΈ‘μ • 도ꡬ(Lighthouse, PageSpeed Insights)μ—μ„œ 'ꢌμž₯ν•˜μ§€ μ•ŠλŠ” 방법' λ˜λŠ” 'μ„œλ“œνŒŒν‹° μ½”λ“œ 영ν–₯'으둜 λΆ„λ₯˜λ˜μ–΄ 전체 νŽ˜μ΄μ§€μ˜ μ„±λŠ₯ 점수λ₯Ό 100점 λ§Œμ μ—μ„œ 70~80점 λŒ€λ‘œ ν•˜λ½μ‹œν‚€λŠ” μ£Όμš” 원인이 λ©λ‹ˆλ‹€. κ²Œλ‹€κ°€ Google Chrome을 λΉ„λ‘―ν•œ μ£Όμš” λΈŒλΌμš°μ €λ“€μ€ μ„œλ“œνŒŒν‹° μΏ ν‚€ 지원을 점차 μ’…λ£Œν•˜κ³  있기 λ•Œλ¬Έμ—, κΈ°μ‘΄ λ°©μ‹μœΌλ‘œλŠ” 검색 μ΅œμ ν™” μΈ‘λ©΄μ—μ„œλ„ μž₯기적으둜 λΆˆλ¦¬ν•΄μ§ˆ 수 μžˆμŠ΅λ‹ˆλ‹€.

μ„œλ“œνŒŒν‹° μΏ ν‚€ 문제의 심측 뢄석

μΏ ν‚€(Cookies)λŠ” μ›Ήμ‚¬μ΄νŠΈ λ°©λ¬Έ μ‹œ μ‚¬μš©μžμ˜ 컴퓨터에 μ €μž₯λ˜λŠ” 데이터 νŒŒμΌμž…λ‹ˆλ‹€. μ„œλ“œνŒŒν‹° μΏ ν‚€λŠ” μ €μž₯λ˜λŠ” μΏ ν‚€κ°€ μ‚¬μš©μžκ°€ 직접 λ°©λ¬Έν•œ νŽ˜μ΄μ§€μ˜ μΏ ν‚€κ°€ μ•„λ‹Œ λ‹€λ₯Έ μ‚¬μ΄νŠΈμ˜ λ„λ©”μΈμ—μ„œ μƒμ„±λœ μΏ ν‚€λ₯Ό μ˜λ―Έν•©λ‹ˆλ‹€. μ‚¬μš©μžκ°€ 직접 λ°©λ¬Έν•œ μ›Ήμ‚¬μ΄νŠΈμ˜ μΏ ν‚€λŠ” "퍼슀트 νŒŒν‹° μΏ ν‚€"라고 ν•˜κ³ , μ‚¬μš©μžκ°€ λ°©λ¬Έν•œ μ‚¬μ΄νŠΈκ°€ μ•„λ‹ˆκ³  μ‚¬μš©μžκ°€ λͺ¨λ₯΄λŠ” μ‚¬μ΄νŠΈμ˜ μΏ ν‚€λŠ” μ„œλ“œνŒŒν‹° 쿠킀라고 ν•©λ‹ˆλ‹€. 유튜브 iframe을 μ‚½μž…ν•˜λ©΄, ν•΄λ‹Ή iframe이 λ‘œλ“œλ  λ•Œ 유튜브 λ„λ©”μΈμ—μ„œ μ‚¬μš©μžμ˜ μ‹œμ²­ 기둝, κ΄‘κ³  좔적 등을 μœ„ν•œ μ„œλ“œνŒŒν‹° μΏ ν‚€λ₯Ό μƒμ„±ν•©λ‹ˆλ‹€. 이것이 μ„±λŠ₯ μ €ν•˜ 및 ν”„λΌμ΄λ²„μ‹œ 경고의 원인이 λ©λ‹ˆλ‹€.

유튜브 λ™μ˜μƒ μ„±λŠ₯ ν…ŒμŠ€νŠΈ κ²°κ³Ό (문제 진단)

유튜브 λ™μ˜μƒμ„ 일반적인 λ°©λ²•μœΌλ‘œ μ„€μ • ν›„ 검색 μ΅œμ ν™” μ„±λŠ₯ 문제 진단 κ²°κ³Ό, μ„±λŠ₯ μΈ‘μ • κ²°κ³ΌλŠ” 100μ μ—μ„œ 79점으둜 ν•˜λ½ν•©λ‹ˆλ‹€. μ£Όμš” 원인은 유튜브 λ™μ˜μƒμ„ 링크할 λ•Œ μ‚¬μš©ν•˜λŠ” μ½”λ“œμ˜ μ„œλ“œνŒŒν‹° μΏ ν‚€λ‘œ λ°œμƒν•©λ‹ˆλ‹€.

βœ”κ²½κ³  ν‘œμ‹œ: μ„œλ“œ νŒŒν‹° μΏ ν‚€ μ‚¬μš© μΏ ν‚€ 2개 찾음 μ„œλ“œ νŒŒν‹° 쿠킀에 λŒ€ν•œ 지원은 Chrome ν–₯ν›„ λ²„μ „μ—μ„œ μ‚­μ œλ  μ˜ˆμ •μž…λ‹ˆλ‹€. μ„œλ“œνŒŒν‹° μΏ ν‚€λŠ” VISITOR_INFO1_LIVE, YSC λ“±μ˜ μ΄λ¦„μœΌλ‘œ λ°œκ²¬λ©λ‹ˆλ‹€.

URL YouTube video YSC /embed/SK3LFFfWKNY?si=(www.youtube.com) VISITOR_INFO1_LIVE /embed/SK3LFFfWKNY?si=(www.youtube.com)
유튜브 λ™μ˜μƒ 링크 μ„±λŠ₯ ν…ŒμŠ€νŠΈ
유튜브 λ™μ˜μƒ 링크 μ„±λŠ₯ ν…ŒμŠ€νŠΈ

μ΄λŸ¬ν•œ 문제λ₯Ό ν•΄κ²°ν•˜λ €λ©΄ 유튜브 λ™μ˜μƒμ„ μ‚½μž…ν•˜λ©΄μ„œλ„ μ„±λŠ₯ 점수λ₯Ό μœ μ§€ν•˜κ³  SEOκΉŒμ§€ κ³ λ €ν•  수 μžˆλŠ” 방법이 ν•„μš”ν•˜λ©°, λ°”λ‘œ νŒμ—…μ°½μ„ μ΄μš©ν•œ 유튜브 μž¬μƒ 방식이 κ·Έ 해닡이 λ©λ‹ˆλ‹€.

2. 유튜브 μ΅œμ ν™” λ™μ˜μƒ μž¬μƒλ°©λ²•: νŒμ—…μ°½(Modal) μž¬μƒ 원리

유튜브 μ΅œμ ν™” λ™μ˜μƒ μž¬μƒ 방법은 일반적인 λ§ν¬λ‚˜ ν”ŒλŸ¬κ·ΈμΈ μ‚¬μš© μ‹œ λ°œμƒν•˜λŠ” μ„±λŠ₯ 문제λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄, 초기 νŽ˜μ΄μ§€ λ‘œλ”© μ‹œ λ™μ˜μƒ ν”Œλ ˆμ΄μ–΄ 자체λ₯Ό λ‘œλ“œν•˜μ§€ μ•Šκ³ , μ‚¬μš©μžκ°€ ν΄λ¦­ν–ˆμ„ λ•Œλ§Œ λ™μ˜μƒμ„ νŒμ—…μ°½(Modal) ν˜•νƒœλ‘œ λ„μ›Œ μž¬μƒν•˜λŠ” λ°©μ‹μž…λ‹ˆλ‹€. 이 방법을 톡해 μ„±λŠ₯ 문제λ₯Ό κ°œμ„ ν•˜κ³ , μ‚¬μš©μž 집쀑도λ₯Ό 높일 수 μžˆμŠ΅λ‹ˆλ‹€.

νŒμ—…μ°½ μž¬μƒ λ°©μ‹μ˜ 기술적 이점 (Lighthouse 100점 달성 μ „λž΅)

유튜브 λ™μ˜μƒμ„ νŒμ—…μ°½μœΌλ‘œ μž¬μƒν•˜κ²Œ μ„€μ •ν•΄μ£Όλ©΄ λ‹€μŒκ³Ό 같은 기술적 이점을 얻을 수 μžˆμŠ΅λ‹ˆλ‹€.

  • 초기 μ„±λŠ₯ 점수 μœ μ§€: 초기 νŽ˜μ΄μ§€ λ‘œλ“œ μ‹œμ—λŠ” κ°€λ²Όμš΄ 이미지와 μžλ°”μŠ€ν¬λ¦½νŠΈ μ½”λ“œλ§Œ λ‘œλ“œν•˜κ³ , 무거운 iframe 및 μ„œλ“œνŒŒν‹° μΏ ν‚€κ°€ λ‘œλ“œλ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 이둜 인해 Largest Contentful Paint (LCP)와 Total Blocking Time (TBT)이 크게 κ°œμ„ λ˜μ–΄ PageSpeed Insights μ μˆ˜κ°€ 100점에 κ°€κΉκ²Œ μœ μ§€λ©λ‹ˆλ‹€.
  • μ„œλ“œνŒŒν‹° μΏ ν‚€ μ§€μ—° λ‘œλ“œ: λ™μ˜μƒ 클릭 μ‹œμ μ—λ§Œ μ„œλ“œνŒŒν‹° μΏ ν‚€κ°€ λ‘œλ“œλ˜λ―€λ‘œ, 초기 νŽ˜μ΄μ§€ λ‘œλ”© μ‹œ λ°œμƒν•˜λŠ” μΏ ν‚€ κ²½κ³ λ₯Ό νšŒν”Όν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  • ν–₯μƒλœ μ‚¬μš©μž κ²½ν—˜ (UX): νŒμ—…μ°½μœΌλ‘œ μž¬μƒλ˜κΈ° λ•Œλ¬Έμ— μ‚¬μš©μžλŠ” νŽ˜μ΄μ§€μ˜ λ‹€λ₯Έ μš”μ†Œμ— λ°©ν•΄λ°›μ§€ μ•Šκ³  λ™μ˜μƒμ— 더 μ§‘μ€‘ν•΄μ„œ μ‹œμ²­ν•  수 μžˆλŠ” μž₯점도 μžˆμŠ΅λ‹ˆλ‹€.

λ³€κ²½ ν›„ ν…ŒμŠ€νŠΈ κ²°κ³Ό (μ„±λŠ₯ κ°œμ„  확인)

유튜브 λ™μ˜μƒ μž¬μƒ 방법을 λ³€κ²½ν•œ ν›„ 검색 μ΅œμ ν™” μ„±λŠ₯ 진단을 λ‹€μ‹œ μ‹€ν–‰ν•΄ 보면, μ„±λŠ₯ μ μˆ˜κ°€ 100점으둜 크게 κ°œμ„ λ˜λŠ” 것을 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.

유튜브 λ™μ˜μƒ μž¬μƒλ°©λ²• νŒ¦μ—…μ°½μœΌλ‘œ μ„€μ •
유튜브 λ™μ˜μƒ μž¬μƒλ°©λ²• νŒ¦μ—…μ°½μœΌλ‘œ μ„€μ •
유튜브 λ™μ˜μƒ μž¬μƒλ°©λ²• λ³€κ²½ν›„ μ„±λŠ₯ν…ŒμŠ€νŠΈ
유튜브 λ™μ˜μƒ μž¬μƒλ°©λ²• λ³€κ²½ν›„ μ„±λŠ₯ν…ŒμŠ€νŠΈ

3. 유튜브 μ΅œμ ν™” μž¬μƒ νŒμ—…μ°½ μ½”λ“œ 상세 뢄석 및 μˆ˜μ • 방법

μ•„λž˜ 제곡된 μ½”λ“œλŠ” HTML, CSS, JavaScriptλ₯Ό μ‘°ν•©ν•˜μ—¬ 유튜브 νŒμ—…μ°½(Modal) κΈ°λŠ₯을 μ™„λ²½ν•˜κ²Œ κ΅¬ν˜„ν•œ μ½”λ“œμž…λ‹ˆλ‹€. 이 μ½”λ“œλ₯Ό κ·ΈλŒ€λ‘œ μ‚¬μš©ν•˜λ©΄ 되며, μˆ˜μ •ν•  뢀뢄은 이미지(λ˜λŠ” κΈ€μž) μ„€μ •κ³Ό 유튜브 링크 μ£Όμ†Œ κ°’λ§Œ λ³€κ²½ν•΄ μ£Όλ©΄ λ©λ‹ˆλ‹€.

μ½”λ“œ ꡬ쑰와 κΈ°λŠ₯ 뢄리

제곡된 μ½”λ“œλŠ” μ„Έ λΆ€λΆ„μœΌλ‘œ λͺ…ν™•νžˆ λΆ„λ¦¬λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.

  • CSS (style νƒœκ·Έ λ‚΄λΆ€): νŒμ—…μ°½(.modal)κ³Ό λ‚΄μš© μ»¨ν…Œμ΄λ„ˆ(.modal-content)의 μœ„μΉ˜, 크기, 배경을 μ •μ˜ν•©λ‹ˆλ‹€. 특히 aspect-ratio: 16 / 9;λŠ” λ™μ˜μƒ λΉ„μœ¨μ„ μœ μ§€ν•˜λ©° λ°˜μ‘ν˜•μœΌλ‘œ ν‘œμ‹œλ˜λ„λ‘ ν•©λ‹ˆλ‹€.
  • HTML ꡬ쑰 (div id="myModal"): λͺ¨λ‹¬ 창의 κΈ°λ³Έ ꡬ쑰와 iframe ν”Œλ ˆμ΄μ–΄, λ‹«κΈ° λ²„νŠΌμ„ μ •μ˜ν•©λ‹ˆλ‹€. μ΄ˆκΈ°μ—λŠ” display: none으둜 숨겨져 μžˆμŠ΅λ‹ˆλ‹€.
  • JavaScript (script νƒœκ·Έ λ‚΄λΆ€): λͺ¨λ‹¬ 창을 μ—΄κ³  λ‹«λŠ” 논리λ₯Ό μ œμ–΄ν•©λ‹ˆλ‹€. μ‚¬μš©μžκ°€ 이미지λ₯Ό 클릭할 λ•Œ λͺ¨λ‹¬μ„ ν‘œμ‹œν•˜κ³  iframe의 src에 μžλ™ μž¬μƒ νŒŒλΌλ―Έν„°λ₯Ό μΆ”κ°€ν•˜μ—¬ μ˜μƒμ„ λ‘œλ“œν•©λ‹ˆλ‹€.

유튜브 링크 μ£Όμ†Œ λ³€κ²½ κ°€μ΄λ“œ

유튜브의 λ§ν¬λŠ” 유튜브 κ²Œμ‹œλ¬Ό κ³΅μœ μ—μ„œ μ„€μ •ν•΄μ£ΌλŠ” μ£Όμ†Œλ₯Ό κ·ΈλŒ€λ‘œ κ°€μ Έμ™€μ„œ μ½”λ“œμ˜ 쀑간 μ£Όμ†Œ λΆ€λΆ„λ§Œ λ³΅μ‚¬ν•΄μ„œ μ‚¬μš©ν•˜μ‹œλ©΄ λ©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, 곡유 μ£Όμ†Œκ°€ https://youtu.be/M9tG__0dpek 라면, μ½”λ“œμ˜ videoSrc λ³€μˆ˜μ— https://www.youtube.com/embed/M9tG__0dpek ν˜•νƒœλ‘œ λ³€κ²½ν•˜μ—¬ μ‚¬μš©ν•΄μ•Ό ν•©λ‹ˆλ‹€.

이미지 μ‚¬μš© 방법 및 ALT 속성 ν™œμš©

유튜브λ₯Ό μž¬μƒν•  λ¬Έκ΅¬λ‚˜ μ΄λ―Έμ§€λŠ” 유튜브의 이미지λ₯Ό μΊ‘μ²˜ν•΄μ„œ μ‚¬μš©ν•˜μ…”λ„ 되며 λ‹€λ₯Έ 이미지λ₯Ό μ‚¬μš©ν•΄λ„ λ©λ‹ˆλ‹€. 이미지 μ£Όμ†ŒλŠ” ν…μŠ€νŠΈ ν˜•μ‹μœΌλ‘œ λ³€κ²½ν•΄μ£Όλ©΄ κ°„λ‹¨ν•˜κ²Œ μ‚¬μš©ν•  수 있으며, λ§Œμ•½ 이미지λ₯Ό μ΄μš©ν•  κ²½μš°λŠ” λΈ”λ‘œκ·Έμ— 이미지λ₯Ό λ¨Όμ € μ„€μ •ν•œ ν›„ κ·Έ 이미지 μ£Όμ†Œλ₯Ό μ΄μš©ν•˜λŠ” 방법도 μžˆμŠ΅λ‹ˆλ‹€. 이 λ°©λ²•μ˜ 핡심은 링크λ₯Ό μž‘μ„±ν•  이미지 ALT μ†μ„±λ§Œ '유튜브 이미지'둜 μ„€μ •ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. JavaScript μ½”λ“œκ°€ 이 ALT 속성을 κ°€μ§„ 이미지λ₯Ό μ°Ύμ•„ 클릭 이벀트λ₯Ό μ—°κ²°ν•˜κΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€.

1. 이미지λ₯Ό λ¨Όμ € νŽ˜μ΄μ§€μ— λ„£κ³  이미지 ALT 속성을 '유튜브 이미지'둜 μ§€μ •ν•©λ‹ˆλ‹€.
2. μž„μ‹œ μ €μž₯ ν›„ 이미지 경둜λ₯Ό λ³΅μ‚¬ν•©λ‹ˆλ‹€.
3. 이미지 경둜λ₯Ό μ›ν•˜λŠ” μœ„μΉ˜μ— λ„£μ–΄μ€λ‹ˆλ‹€.
4. μ•„λž˜ 슀크립트 μ½”λ“œλ₯Ό 유튜브 νŒμ—…μ°½ μ½”λ“œμ™€ 같이 μ‚¬μš©ν•©λ‹ˆλ‹€.
유튜브 νŒμ—…μ°½ μ½”λ“œ
유튜브 νŒμ—…μ°½ μ½”λ“œ

μ΅œμ ν™”λœ νŒμ—…μ°½ μ½”λ“œ (HTML, CSS, JavaScript)

βœ” μ½”λ“œμˆ˜μ •: 2024.9.13. μ•„λž˜ μ½”λ“œλŠ” μžλ°”μŠ€ν¬λ¦½νŠΈλ₯Ό μ΄μš©ν•˜μ—¬ ALT 속성 '유튜브 이미지'λ₯Ό κ°€μ§„ λͺ¨λ“  이미지λ₯Ό 클릭 κ°€λŠ₯ν•˜λ„λ‘ μ—°κ²°ν•©λ‹ˆλ‹€.

βœ” νŒμ—…μ°½ μ½”λ“œ

style
 .modal {
 display: none;
 position: fixed;
 z-index: 1000;
 left: 0;
 top: 0;
 width: 100%;
 height: 100%;
 background: rgba(0, 0, 0, 0.5);
 overflow: auto;
 }
 .modal-content {
 background: #fff;
 margin: 5% auto;
 padding: 20px;
 border: 1px solid #888;
 width: 90%;
 max-width: 960px;
 position: relative;
 box-sizing: border-box;
 overflow: hidden;
 aspect-ratio: 16 / 9;
 }
 .close {
 position: absolute;
 top: 10px;
 right: 20px;
 color: #aaa;
 font-size: 28px;
 font-weight: bold;
 cursor: pointer;
 }
 .close:hover {
 color: #000;
 }
 .modal-content iframe {
 width: 100%;
 height: 100%;
 border: none;
 }
 /style

div id="myModal" class="modal"
 div class="modal-content"
 span class="close" onclick="closeModal()"×/span
 iframe id="videoFrame" src="" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen/iframe
 /div
/div

script
// 유튜브 λ™μ˜μƒ URL (여기에 λ³΅μ‚¬ν•œ 유튜브 μž„λ² λ“œ μ£Όμ†Œμ˜ 'embed/μ˜μƒID' 뢀뢄을 μž…λ ₯ν•˜μ„Έμš”)
const videoSrc = "https://www.youtube.com/embed/M9tG__0dpek";

document.addEventListener('DOMContentLoaded', () = {
 // ALT 속성이 "유튜브 이미지"인 λͺ¨λ“  이미지λ₯Ό μ°Ύμ•„ 클릭 κ°€λŠ₯ν•˜κ²Œ λ§Œλ“­λ‹ˆλ‹€.
 document.querySelectorAll('img[alt="유튜브 이미지"]').forEach(img = {
 
 const link = document.createElement('a');
 link.href = '#';
 link.classList.add('popup-link');
 link.addEventListener('click', openModal);

 // 이미지λ₯Ό νƒœκ·Έλ‘œ κ°μ‹Έμ„œ 클릭 μ˜μ—­μ„ μ„€μ •ν•©λ‹ˆλ‹€.
 img.parentNode.insertBefore(link, img);
 link.appendChild(img);
 });
});

function openModal(event) {
 event.preventDefault();
 document.getElementById("myModal").style.display = "block";
 // λͺ¨λ‹¬μ°½ 열릴 λ•Œλ§Œ srcλ₯Ό μ„€μ •ν•˜κ³  autoplay νŒŒλΌλ―Έν„°λ₯Ό μΆ”κ°€ν•˜μ—¬ μž¬μƒμ„ μ‹œμž‘ν•©λ‹ˆλ‹€.
 document.getElementById("videoFrame").src = `${videoSrc}?autoplay=1`;
}

function closeModal() {
 document.getElementById("myModal").style.display = "none";
 const videoFrame = document.getElementById("videoFrame");
 const currentSrc = videoFrame.src;
 // λͺ¨λ‹¬μ°½ 닫을 λ•Œ srcλ₯Ό μ΄ˆκΈ°ν™”ν•˜μ—¬ λ™μ˜μƒ μž¬μƒμ„ μ€‘μ§€ν•˜κ³  λ¦¬μ†ŒμŠ€λ₯Ό ν•΄μ œν•©λ‹ˆλ‹€.
 videoFrame.src = ''; 
 videoFrame.src = currentSrc.split('?')[0]; // srcλ₯Ό 원본 μ£Όμ†Œλ‘œ μž¬μ„€μ • (선택 사항)
}

window.onclick = function(event) {
 // λͺ¨λ‹¬ μ™ΈλΆ€λ₯Ό ν΄λ¦­ν–ˆμ„ λ•Œ λͺ¨λ‹¬μ„ λ‹«κ³  μž¬μƒμ„ μ€‘μ§€ν•©λ‹ˆλ‹€.
 if (event.target === document.getElementById("myModal")) {
 closeModal();
 }
}
/script

4. μ„œλ“œνŒŒν‹° μΏ ν‚€ μ’…λ£Œ μ‹œλŒ€μ˜ SEO λŒ€μ‘ μ „λž΅ 및 μ„±λŠ₯ μ΅œμ ν™”

Google은 2024λ…„λΆ€ν„° μ„œλ“œνŒŒν‹° μΏ ν‚€ 지원을 λ‹¨κ³„μ μœΌλ‘œ μ’…λ£Œν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. μ΄λŠ” μ›Ήμ‚¬μ΄νŠΈ μš΄μ˜μžλ“€μ—κ²Œ λ‹¨μˆœν•œ 기술적 λ¬Έμ œκ°€ μ•„λ‹Œ, 근본적인 SEO 및 μ›Ή μ„±λŠ₯ μ „λž΅μ˜ λ³€ν™”λ₯Ό μš”κ΅¬ν•©λ‹ˆλ‹€. 유튜브 νŒμ—…μ°½ μž¬μƒ 방법은 μ΄λŸ¬ν•œ 변화에 κ°€μž₯ 효율적으둜 λŒ€μ‘ν•˜λŠ” λͺ¨λ²” 사둀 쀑 ν•˜λ‚˜μž…λ‹ˆλ‹€.

Core Web Vitals (CWV) μ§€ν‘œμ— λ―ΈμΉ˜λŠ” 영ν–₯

일반적으둜 λ™μ˜μƒ iframe은 νŽ˜μ΄μ§€ λ‘œλ”© μ΄ˆκΈ°μ— 메인 μŠ€λ ˆλ“œλ₯Ό μ°¨μ§€ν•˜μ—¬ TBT (Total Blocking Time) 및 FID/INP (μ‚¬μš©μž 응닡성) μ§€ν‘œμ— 뢀정적인 영ν–₯을 λ―ΈμΉ©λ‹ˆλ‹€. νŒμ—…μ°½ 방식은 λ™μ˜μƒμ„ ν΄λ¦­ν•˜κΈ° μ „κΉŒμ§€ 이 무거운 μŠ€λ ˆλ“œ μž‘μ—…μ„ μ™„μ „νžˆ μ§€μ—°μ‹œν‚€λ―€λ‘œ, Core Web Vitals의 μ„Έ κ°€μ§€ μ£Όμš” μ§€ν‘œ(LCP, INP, CLS)λ₯Ό λͺ¨λ‘ κΈμ •μ μœΌλ‘œ κ°œμ„ ν•˜λŠ” 효과λ₯Ό κ°€μ Έμ˜΅λ‹ˆλ‹€.

μ‚¬μš©μž 이미지 μ„ νƒμ˜ μ€‘μš”μ„±

이 방법을 μ‚¬μš©ν•  경우, 이미지가 2κ°œκ°€ λ…ΈμΆœλ  수 μžˆμœΌλ―€λ‘œ, 원본 μ΄λ―Έμ§€λŠ” display: none μ„€μ • λ“±μœΌλ‘œ μ‚¬μš©μžμ—κ²Œ λ…ΈμΆœλ˜μ§€ μ•Šκ²Œ μ²˜λ¦¬ν•΄μ•Ό ν•©λ‹ˆλ‹€. κ°€μž₯ μ€‘μš”ν•œ 것은 λ™μ˜μƒμ˜ 썸넀일 역할을 ν•  μ΄λ―Έμ§€μž…λ‹ˆλ‹€. 이 μ΄λ―Έμ§€λŠ” LCP μš”μ†Œλ‘œ μž‘μš©ν•  κ°€λŠ₯성이 λ†’μœΌλ―€λ‘œ, λ°˜λ“œμ‹œ μ••μΆ•ν•˜κ³  WebP와 같은 μ΅œμ‹  ν˜•μ‹μœΌλ‘œ λ³€ν™˜ν•΄μ•Ό ν•˜λ©°, μ΄λ―Έμ§€μ˜ 크기(width, height) 속성을 λͺ…μ‹œν•˜μ—¬ CLS(λ ˆμ΄μ•„μ›ƒ 이동)λ₯Ό λ°©μ§€ν•΄μ•Ό ν•©λ‹ˆλ‹€. μ‚¬μš©μžκ°€ 이미지λ₯Ό 클릭할 λ•Œλ§Œ λΉ„λ‘œμ†Œ μ‹€μ œ ν”Œλ ˆμ΄μ–΄λ₯Ό λ‘œλ“œν•˜λŠ” '클릭 투 ν”Œλ ˆμ΄' 원칙이 μ™„λ²½ν•˜κ²Œ μ μš©λ©λ‹ˆλ‹€.

μ½”λ“œ μœ μ§€λ³΄μˆ˜ 및 ν™•μž₯μ„±

제곡된 JavaScript μ½”λ“œλŠ” document.querySelectorAll('img[alt="유튜브 이미지"]')λ₯Ό μ‚¬μš©ν•˜μ—¬ μœ μ—°ν•˜κ²Œ μ—¬λŸ¬ λ™μ˜μƒμ„ μ²˜λ¦¬ν•  수 μžˆλ„λ‘ μ„€κ³„λ˜μ—ˆμŠ΅λ‹ˆλ‹€. λΈ”λ‘œκ·Έ 글에 μ—¬λŸ¬ 개의 유튜브 λ™μ˜μƒμ„ μ‚½μž…ν•  κ²½μš°μ—λ„, 각 λ™μ˜μƒμ˜ 썸넀일 이미지에 λ™μΌν•œ alt 속성("유튜브 이미지")을 μ§€μ •ν•˜κ³ , JavaScript의 videoSrc λ³€μˆ˜λ₯Ό ν•΄λ‹Ή 이미지에 맞게 λ™μ μœΌλ‘œ λ³€κ²½ν•˜λŠ” λ‘œμ§μ„ μΆ”κ°€ν•˜λ©΄ ν•˜λ‚˜μ˜ 슀크립트둜 λͺ¨λ“  λ™μ˜μƒμ„ 관리할 수 μžˆμŠ΅λ‹ˆλ‹€. μ΄λŠ” μž₯기적인 μ›Ήμ‚¬μ΄νŠΈ μœ μ§€λ³΄μˆ˜ νš¨μœ¨μ„±μ„ λ†’μ—¬μ€λ‹ˆλ‹€.


유튜브 νŒμ—…μ°½ 방식을 μ‚¬μš©ν•˜λ©΄ PageSpeed Insights μ μˆ˜κ°€ 정말 100점이 λ˜λ‚˜μš”?

이 방법은 λ™μ˜μƒ iframeκ³Ό 이둜 인해 λ°œμƒν•˜λŠ” μ„œλ“œνŒŒν‹° μΏ ν‚€ λ‘œλ“œλ₯Ό 초기 νŽ˜μ΄μ§€ λ‘œλ”©μ—μ„œ μ™„μ „νžˆ μ œκ±°ν•˜μ—¬, μ›Ήμ‚¬μ΄νŠΈμ˜ Core Web Vitals 점수λ₯Ό 극적으둜 κ°œμ„ ν•©λ‹ˆλ‹€. 일반적으둜 λ™μ˜μƒ μ‚½μž… μ™Έ λ‹€λ₯Έ μ„±λŠ₯ λ¬Έμ œκ°€ μ—†λ‹€λ©΄ 100점 λ˜λŠ” 그에 μ€€ν•˜λŠ” 높은 점수λ₯Ό 달성할 수 μžˆμŠ΅λ‹ˆλ‹€. μ΄λŠ” 무거운 λ¦¬μ†ŒμŠ€λ₯Ό ν•„μš”ν•  λ•Œλ§Œ λ‘œλ“œν•˜λŠ” 'μ§€μ—° λ‘œλ”©(Lazy Loading)'의 μ΅œμ ν™”λœ κ΅¬ν˜„ λ°©μ‹μž…λ‹ˆλ‹€.

νŒμ—…μ°½μœΌλ‘œ μ„€μ •ν•˜λ©΄ λͺ¨λ°”일 μ‚¬μš©μž κ²½ν—˜μ€ μ–΄λ–»κ²Œ λ˜λ‚˜μš”?

제곡된 CSS μ½”λ“œμ— width: 90%; max-width: 960px; 및 aspect-ratio: 16 / 9;κ°€ μ μš©λ˜μ–΄ λͺ¨λ°”일 ν™˜κ²½μ—μ„œλ„ νŒμ—…μ°½μ΄ ν™”λ©΄ 쀑앙에 λ°˜μ‘ν˜•μœΌλ‘œ 뜨게 λ©λ‹ˆλ‹€. λ˜ν•œ μ‚¬μš©μžκ°€ 직접 λ™μ˜μƒμ„ 클릭해야 μž¬μƒλ˜λ―€λ‘œ, μ›μΉ˜ μ•ŠλŠ” 데이터 μ‚¬μš©μ΄λ‚˜ μ‚¬μš΄λ“œ λ°œμƒμ„ 막아 λͺ¨λ°”일 μ‚¬μš©μž κ²½ν—˜μ„ 였히렀 κ°œμ„ ν•©λ‹ˆλ‹€.

ν•˜λ‚˜μ˜ νŽ˜μ΄μ§€μ— μ—¬λŸ¬ 개의 유튜브 νŒμ—… λ™μ˜μƒμ„ 넣을 수 μžˆλ‚˜μš”?

λ„€, κ°€λŠ₯ν•©λ‹ˆλ‹€. λ‹€λ§Œ, 제곡된 μŠ€ν¬λ¦½νŠΈλŠ” const videoSrcκ°€ 단일 μ˜μƒ μ£Όμ†Œλ₯Ό κ°€μ§€κ³  μžˆμœΌλ―€λ‘œ, μ—¬λŸ¬ 개의 λ™μ˜μƒμ„ μ‚¬μš©ν•˜λ €λ©΄ JavaScript λ‘œμ§μ„ μˆ˜μ •ν•΄μ•Ό ν•©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, 썸넀일 μ΄λ―Έμ§€μ˜ data-video-id 속성에 μ˜μƒ μ£Όμ†Œλ₯Ό μ €μž₯ν•˜κ³ , openModal ν•¨μˆ˜ λ‚΄μ—μ„œ 클릭된 μ΄λ―Έμ§€μ˜ data-video-idλ₯Ό 읽어와 videoFrame.src에 μ„€μ •ν•˜λ„λ‘ μ½”λ“œλ₯Ό ν™•μž₯ν•΄μ•Ό ν•©λ‹ˆλ‹€.

λͺ¨λ‹¬μ°½ λ‹«κΈ° λ²„νŠΌ(X) 외에 λ‹€λ₯Έ λ°©λ²•μœΌλ‘œλ„ νŒμ—…μ°½μ„ 닫을 수 μžˆλ‚˜μš”?

λ„€. 제곡된 슀크립트의 window.onclick ν•¨μˆ˜λŠ” μ‚¬μš©μžκ°€ λͺ¨λ‹¬ μ°½ μ™ΈλΆ€μ˜ λ°°κ²½(.modal)을 ν΄λ¦­ν–ˆμ„ λ•Œλ„ νŒμ—…μ°½μ„ λ‹«κ³  λ™μ˜μƒ μž¬μƒμ„ μ€‘μ§€ν•˜λ„λ‘ μ„€μ •λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. μ΄λŠ” μ‚¬μš©μžμ—κ²Œ 직관적인 λ‹«κΈ° κΈ°λŠ₯을 μ œκ³΅ν•©λ‹ˆλ‹€.

Latest in this category

    μΏ νŒ‘νŒŒνŠΈλ„ˆμŠ€ API V2 기반으둜 μ΅œμ‹ μƒν’ˆ 및 μΈκΈ°μƒν’ˆμ΄ μžλ™ λ…ΈμΆœλ©λ‹ˆλ‹€.

    AI μ±—λ΄‡μœΌλ‘œ κ΄€λ ¨ 정보λ₯Ό λΉ λ₯΄κ²Œ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€. 멈좀
    λ…Έλž˜ μž¬μƒ 멈좀