블로그 SEO 최적화를 위한 핵심 전략인 HowTo 구조화 데이터의 중요성을 재조명하고, 구글의 리치 결과(Rich Result) 축소 정책에도 불구하고 구조화를 유지해야 하는 이유(E-E-A-T, 색인화)와 티스토리에서 자바스크립트를 활용해 JSON-LD를 자동 생성하는 구체적인 방법을 안내합니다.
블로그 사이트를 운영하며 콘텐츠를 제작할 때, 검색최적화(SEO)에서 구조화 데이터의 중요성이 자주 강조됩니다.구조화는 아무리 강조해도 지나치지 않습니다. 그 이유는 콘텐츠가 결국 사람을 위한 것이지만, 이 콘텐츠를 검색 사용자에게 노출하고 방문을 유도하는 역할은 검색엔진과 같은 기계가 담당하기 때문입니다.
구조화 스크립트로 SEO를 자동화하는 블로그 운영자의 팁
즉, 구조화 데이터는 기계가 콘텐츠를 이해하는 방식을 뜻하며, 이에 맞춰 콘텐츠를 제작하는 것은 검색엔진이 내 콘텐츠를 정확히 인식하고 평가할 수 있도록 돕는 가장 기본적이면서도 필수적인 작업입니다. 특히 HowTo 형태의 블로그 구조화 데이터를 활용한 절차형 콘텐츠는 주요 검색엔진에서 검색 결과의 리치 스니펫(미리보기)으로 노출되어 방문자의 가시성을 향상시키는 효과가 있었습니다.
절차형 콘텐츠를 자동으로 구조화하는 자바스크립트
이 글에서는 블로그 본문에 태그를 활용하여 단계별 절차 제목을 명확히 작성하고, 자바스크립트를 이용해 이를 자동으로 인식하여 JSON-LD 형식의 구조화 데이터로 변환하는 방법을 상세히 설명합니다.
이를 통해 복잡한 코딩 없이도 손쉽게 검색엔진 최적화(SEO)에 적합한 HowTo 데이터 자동 생성이 가능하며, 블로그 운영자와 방문자 모두에게 높은 만족도를 제공할 수 있습니다.
1. HowTo 구조화 데이터란?
HowTo 구조화 데이터는 사용자가 어떤 작업을 단계별로 따라 할 수 있도록 절차를 명확하게 설명하는 schema.org/HowTo 형식의 콘텐츠입니다. 구글 등 검색엔진은 이 데이터를 인식해 절차형 미리보기를 검색 결과에 보여줍니다. 이를 통해 방문자는 빠르게 핵심 단계와 방법을 파악하고, 블로그 운영자는 검색 노출 효과(CTR 향상 및 SEO 강화)를 기대할 수 있었습니다.
2. 왜 이 자동화 코드를 사용할까?
h4태그는 의미론적 제목 태그로, SEO에 중요한 단계 제목 역할을 합니다.- 특정 클래스를 붙여 자바스크립트가 이 태그만 골라 읽을 수 있도록 명확히 구분합니다.
- 본문 내 각 단계 제목이 명확해져 방문자도 쉽게 이해할 수 있는 사용자 경험(UX)이 개선됩니다.
예를 들어, 티스토리 관리자 페이지에 로그인하는 절차를 설명하고자 한다면, 제목 부분은 h4 class="howto-step-title"1단계: 관리자 페이지 로그인/h4처럼 작성하고, 그 아래에 p class="howto-step-desc"티스토리 관리자 페이지에 접속해 로그인하세요./p처럼 설명을 덧붙입니다. 이런 식으로 각 단계마다 제목과 설명을 한 쌍으로 작성하면, 자바스크립트가 이 구조를 인식하여 자동으로 JSON-LD 형식의 HowTo 구조화 데이터를 생성할 수 있게 됩니다.
또한, 각 단계 제목은 독립적으로 명확해야 하며, 설명 역시 구체적으로 작성하는 것이 검색엔진 최적화(SEO)와 사용자 경험(UX) 측면에서 모두 긍정적인 효과를 줍니다. 이러한 구조로 작성된 콘텐츠는 검색엔진이 콘텐츠의 절차적 성격을 정확히 파악하는 데 결정적인 도움을 줍니다.
HowTo 구조화 데이터 자동 생성 코드 적용 방법

1단계: 본문 콘텐츠에 클래스 적용
아래 제공된 스크립트 코드는 블로그 본문에서 다음과 같은 클래스를 가진 태그들을 읽어 JSON-LD 형식의 HowTo 구조화 데이터를 자동 생성합니다.
- 전체 제목:
h3 class="howto-title" - 소개 문구:
.howto-intro클래스 요소 - 메타 정보:
.howto-meta-info내부에dt와dd태그로 시간, 도구, 재료 등 - 단계별 구간:
.howto-step클래스로 묶인 각각의 단계- 단계 제목:
.howto-step-title클래스가 붙은 태그 (예:h4 class="howto-step-title"1단계: 로그인/h4) - 단계 설명:
.howto-step-desc클래스가 붙은 태그 (예:p class="howto-step-desc"관리자 페이지에 로그인합니다./p)
- 단계 제목:
2단계: 자바스크립트 코드 스킨 편집에 삽입
복사한 자바스크립트 코드를 티스토리 스킨 편집 화면에서 /head 태그 바로 직전에 붙여넣습니다. 이 위치에 삽입해야 구글 검색엔진이 구조화 데이터를 정상적으로 인식할 수 있습니다.
3단계: 단계별 콘텐츠 작성 예시
블로그 본문에 각 단계를 아래 예시처럼 작성합니다. 글 전체가 절차 중심으로 구성되며, 검색엔진이 이를 정확히 파악해 ‘단계별 안내 카드’ 형태로 인식하도록 돕습니다.
h3 class="howto-title"티스토리 관리자 페이지 이용 방법/h3
p class="howto-intro"관리자 페이지 로그인부터 글 작성까지 단계별로 안내합니다./p
div class="howto-step"
h4 class="howto-step-title"1단계: 관리자 페이지 로그인/h4
p class="howto-step-desc"티스토리 관리자 페이지에 접속해 아이디와 비밀번호를 입력하여 로그인하세요./p
/div
div class="howto-step"
h4 class="howto-step-title"2단계: 새 글 작성 화면으로 이동/h4
p class="howto-step-desc"관리자 메뉴에서 글쓰기 버튼을 눌러 새 글 작성 화면으로 이동합니다./p
/div
!-- 필요에 따라 단계 반복 --
4단계: HowTo 구조화 데이터 생성 확인
작성 후 블로그 페이지를 저장하고,
구글 리치 결과 테스트 에서 내 블로그 URL을 입력하여 HowTo 구조화 데이터가 제대로 생성되는지 검증합니다. 이는 SEO 최적화의 기본 단계입니다.
추가 메타 정보 (선택적 HowTo 요소)
총 소요 시간, 도구, 재료 정보를 추가하면 HowTo 스키마를 더 풍부하게 만들 수 있습니다. 다음과 같이 작성할 수 있습니다.
dl class="howto-meta-info"
dt총 소요 시간/dtdd30분/dd
dt도구/dtdd컴퓨터, 인터넷 브라우저/dd
dt재료/dtdd티스토리 계정/dd
/dl
| 태그 | 역할 |
|---|---|
| dl | 정의 목록(Definition List)의 시작을 의미 |
| dt | 정의할 항목의 제목 (Definition Term) |
| dd | 그 항목에 대한 설명 또는 값 (Definition Description) |
자동 생성 자바스크립트 코드
이 코드는 DOM을 탐색하여 HowTo 요소를 추출하고, 유효한 JSON-LD를 head 태그 내에 동적으로 삽입합니다.
script
document.addEventListener('DOMContentLoaded', function() {
const existingSchema = document.querySelector('script[type="application/ld+json"][data-howto]');
if (existingSchema) existingSchema.remove();
const howtoTitle = document.querySelector('h3.howto-title')?.textContent.trim() || document.title;
const howtoDesc = document.querySelector('.howto-intro')?.textContent.trim() || '';
const metaInfo = document.querySelector('.howto-meta-info');
const getMetaValue = (labelText) = {
if (!metaInfo) return '';
const dtElements = metaInfo.querySelectorAll('dt');
for (const dt of dtElements) {
if (dt.textContent.trim().includes(labelText)) {
return dt.nextElementSibling?.textContent.trim() || '';
}
}
return '';
};
const totalTime = getMetaValue('소요 시간');
const tools = getMetaValue('도구');
const supplies = getMetaValue('재료');
const steps = Array.from(document.querySelectorAll('.howto-step')).map((step, index) = {
const name = step.querySelector('.howto-step-title')?.textContent.replace(/^d+단계:s*/, '').trim() || '';
const text = step.querySelector('.howto-step-desc')?.textContent.trim() || '';
return {
"@type": "HowToStep",
"name": name,
"text": text,
"position": index + 1
};
}).filter(step = step.name && step.text);
if (!howtoTitle || steps.length === 0) return;
const howToData = {
"@context": "https://schema.org",
"@type": "HowTo",
"name": howtoTitle,
"description": howtoDesc,
// totalTime은 ISO 8601 형식(PT#M)으로 변환하여 사용하는 것이 권장되지만, 여기서는 문자열로 유지
...(totalTime && { "totalTime": "PT" + totalTime.replace(/(d+)(분)/, '$1M') }),
...(tools && { "tool": tools.split(',').map(item = ({ "@type": "HowToTool", "name": item.trim() })) }),
...(supplies && { "supply": supplies.split(',').map(item = ({ "@type": "HowToSupply", "name": item.trim() })) }),
"step": steps
};
const script = document.createElement('script');
script.type = 'application/ld+json';
script.setAttribute('data-howto', 'true');
script.text = JSON.stringify(howToData, null, 2);
document.head.appendChild(script);
});
/script
2023년 구글 정책 변경: 리치 결과 축소와 구조화의 지속적 가치
그런데 자료를 찾아보니 이런 내용이 있었습니다. 여태까지 열심히 글을 작성하고 코드까지 만들었는데…
HowTo 스키마 마크업 자체는 여전히 유효하지만, Google 검색 결과에서 HowTo 리치 결과(시각적으로 강조되는 단계별 가이드 형식)의 표시가 대폭 축소되었거나 중단된 상태입니다.
2023년 9월 Google 변경 사항 요약
- HowTo 리치 결과 중단
Google은 검색 결과의 단순화를 위해 HowTo 리치 결과를 데스크톱에서도 중단했습니다. 모바일에서는 이미 그 이전에 중단된 바 있습니다. - FAQ 스키마(Frequently Asked Questions)
FAQPage 스키마도 이제는 공신력 있는 정부 및 건강 관련 웹사이트에만 리치 결과로 표시될 가능성이 높아졌습니다. 일반적인 블로그나 일반 웹사이트에서는 더 이상 정기적으로 노출되지 않는 방향으로 변경되었습니다.
리치 결과 축소에도 불구하고 구조화를 유지해야 하는 이유
하지만, 여전히 구조화 데이터는 가치가 있습니다. 단지 눈에 보이는 리치 결과가 줄었을 뿐, 검색엔진 최적화의 근본적인 목표인 콘텐츠 이해도를 향상시킬수 있기 때문입니다.
1. 검색엔진 이해도 및 색인화 향상
비록 리치 결과로 직접 노출되지 않더라도, HowTo 스키마는 Google이 해당 페이지가 무엇을 어떻게 하는 방법에 대한 콘텐츠임을 명확히 이해하는 데 도움이 됩니다. 이는 검색 색인화 및 콘텐츠 분류 정확도 향상으로 이어질 수 있습니다. 즉, 구글이 콘텐츠를 더 정확히 이해하고 관련 검색어에 노출시킬 확률이 높아집니다.
2. 미래 정책 변화에 대한 대비책
Google은 언제든 정책을 바꿀 수 있습니다. 향후 특정 스키마에 대한 리치 결과를 다시 도입하거나, 새로운 방식으로 활용할 수 있기 때문에, 스키마 마크업을 미리 적용해 두는 것은 일종의 대비책이자 장기적인 SEO 자산이 될 수 있습니다.
3. E-E-A-T 신호 강화 (전문성, 권위, 신뢰도)
HowTo나 FAQ 같은 구조화 데이터는 콘텐츠의 전문성(Expertise), 경험(Experience), 권위(Authoritativeness), 신뢰도(Trustworthiness) 즉 E-E-A-T 신호를 강화하는 데 간접적으로 기여할 수 있습니다. 이는 검색엔진이 해당 페이지를 보다 신뢰할 수 있는 정보원으로 판단하는 데 도움이 됩니다.
리치 결과가 축소된 건 아쉽지만, 구조화 마크업을 적용하는 일 자체가 무의미한 것은 아닙니다. 검색엔진 최적화(SEO), 사용자 경험(UX), 미래 확장성 측면에서 HowTo와 FAQ 구조화 데이터는 여전히 의미 있는 전략입니다.
지금은 리치 결과가 나타나지 않더라도, 구조화된 콘텐츠 설계와 코드 적용은 장기적으로 분명한 SEO 자산이 됩니다.
구조화 데이터는 블로그 SEO에 왜 중요한가요?
구조화 데이터는 검색엔진이 콘텐츠를 ‘무엇에 대한 글인지’ 기계적으로 이해할 수 있도록 돕는 포맷입니다. 특히 HowTo 스키마를 적용하면 검색 결과에 단계별 안내 카드처럼 노출되어 클릭률(CTR)과 검색 노출 효과를 높일 수 있었습니다. 리치 결과가 축소된 후에도 콘텐츠 이해도를 높여 색인화 정확도를 높여줍니다.
자바스크립트를 활용해 구조화 데이터를 자동 생성하는 방식의 장점은 무엇인가요?
본문 내 h4, p 태그에 특정 클래스만 지정하면, 자바스크립트가 이를 읽어 JSON-LD 형식의 HowTo 구조화 데이터를 자동으로 생성합니다. 이는 복잡한 코딩 없이도 SEO 효과를 누릴 수 있으며, 콘텐츠 수정 시 구조화 데이터도 함께 업데이트되어 관리 효율성이 매우 높다는 장점이 있습니다.
구글은 HowTo 리치 스니펫을 더 이상 표시하지 않나요?
2023년 9월 이후, 구글은 HowTo 리치 결과를 모바일과 데스크톱 검색 결과에서 대부분 중단했습니다. 하지만 구조화 데이터 자체는 여전히 콘텐츠 분류 정확도, 색인화 향상, 그리고 향후 정책 변경에 대한 대비책으로 장기적인 SEO 자산으로서 가치가 높습니다.