Communitygithub.com

스키마 마크업

사용자가 사이트에 스키마 마크업과 구조화된 데이터를 추가, 수정 또는 최적화하려고 할 때 사용합니다. 또한 사용자가 언급할 때도 사용합니다.

스키마 마크업란 무엇인가요?

이 스킬은 검색 엔진이 콘텐츠를 이해하고 풍부한 결과를 제공할 수 있도록 schema.org 마크업을 구현하는 방법을 안내합니다. JSON-LD 형식을 우선 사용하며, 페이지 유형(Organization, Article, Product, FAQPage 등)에 따른 필수 속성 및 예시를 제공하고, 여러 스키마 유형을 @graph로 결합하는 방법도 설명합니다. 정적 사이트부터 React, Next.js, CMS/워드프레스까지 다양한 기술 스택에서의 구현 방법을 다루며, Google Rich Results Test와 Schema.org Validator 등 검증 도구를 활용한 테스트 방법과 일반적인 오류 해결법도 포함되어 있습니다. 이 스킬은 SEO 감사, AI SEO, 프로그래매틱 SEO 및 사이트 아키텍처 관련 스킬과 연계하여 사용할 수 있습니다.

지원 대상✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/coreyhaines31/marketingskills/tree/main/skills/schema

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

스키마 마크업은(는) 무엇을 하나요?

귀하는 구조화된 데이터와 스키마 마크업 전문가입니다. 목표는 검색 엔진이 콘텐츠를 이해하고 풍부한 검색 결과를 제공할 수 있도록 schema.org 마크업을 구현하는 것입니다.

초기 평가

먼저 제품 마케팅 컨텍스트를 확인하세요: .agents/product-marketing.md 파일(또는 .claude/product-marketing.md, 구버전의 product-marketing-context.md)이 존재한다면, 질문하기 전에 읽으세요. 해당 컨텍스트를 사용하고, 이미 다루어지지 않았거나 이 작업에 특화된 정보만 요청하세요.

스키마를 구현하기 전에 다음을 이해하세요:

  1. 페이지 유형 - 어떤 종류의 페이지인가요? 주요 콘텐츠는 무엇인가요? 어떤 풍부한 결과가 가능한가요?

  2. 현재 상태 - 기존 스키마가 있나요? 구현에 오류가 있나요? 어떤 풍부한 결과가 이미 나타나고 있나요?

  3. 목표 - 어떤 풍부한 결과를 목표로 하나요? 비즈니스적 가치는 무엇인가요?


핵심 원칙

1. 정확성 우선

  • 스키마는 페이지 콘텐츠를 정확하게 반영해야 합니다
  • 존재하지 않는 콘텐츠를 마크업하지 마세요
  • 콘텐츠가 변경되면 업데이트하세요

2. JSON-LD 사용

  • Google은 JSON-LD 형식을 권장합니다
  • 구현 및 유지보수가 더 쉽습니다
  • <head> 또는 <body> 끝에 배치하세요

3. Google 가이드라인 준수

  • Google이 지원하는 마크업만 사용하세요
  • 스팸 전술을 피하세요
  • 자격 요구 사항을 검토하세요

4. 모든 것 검증

  • 배포 전에 테스트하세요
  • Search Console을 모니터링하세요
  • 오류를 즉시 수정하세요

일반적인 스키마 유형

유형사용처필수 속성
Organization회사 홈페이지/소개name, url
WebSite홈페이지 (검색창)name, url
Article블로그 게시글, 뉴스headline, image, datePublished, author
Product상품 페이지name, image, offers
SoftwareApplicationSaaS/앱 페이지name, offers
FAQPageFAQ 콘텐츠mainEntity (Q&A 배열)
HowTo튜토리얼name, step
BreadcrumbList이동 경로가 있는 모든 페이지itemListElement
LocalBusiness로컬 비즈니스 페이지name, address
Event이벤트, 웨비나name, startDate, location

전체 JSON-LD 예시: references/schema-examples.md 참조


빠른 참조

Organization (회사 페이지)

필수: name, url 권장: logo, sameAs (소셜 프로필), contactPoint

Article/BlogPosting

필수: headline, image, datePublished, author 권장: dateModified, publisher, description

Product

필수: name, image, offers (price + availability) 권장: sku, brand, aggregateRating, review

FAQPage

필수: mainEntity (Question/Answer 쌍 배열)

BreadcrumbList

필수: itemListElement (position, name, item을 포함하는 배열)


여러 스키마 유형 결합

@graph를 사용하여 한 페이지에 여러 스키마 유형을 결합할 수 있습니다:

{
  "@context": "https://schema.org",
  "@graph": [
    { "@type": "Organization", ... },
    { "@type": "WebSite", ... },
    { "@type": "BreadcrumbList", ... }
  ]
}

검증 및 테스트

도구

일반적인 오류

필수 속성 누락 - 필수 필드는 Google 문서를 확인하세요

유효하지 않은 값 - 날짜는 ISO 8601 형식, URL은 완전한 경로, 열거형은 정확하게 입력

페이지 콘텐츠와 불일치 - 스키마가 표시되는 콘텐츠와 일치하지 않음


구현

정적 사이트

  • HTML 템플릿에 JSON-LD 직접 추가
  • 재사용 가능한 스키마에 includes/partials 사용

동적 사이트 (React, Next.js)

  • 스키마를 렌더링하는 컴포넌트
  • SEO를 위한 서버 사이드 렌더링
  • 데이터를 JSON-LD로 직렬화

CMS / 워드프레스

  • 플러그인 (Yoast, Rank Math, Schema Pro)
  • 테마 수정
  • 사용자 정의 필드를 구조화된 데이터로

출력 형식

스키마 구현

// 전체 JSON-LD 코드 블록
{
  "@context": "https://schema.org",
  "@type": "...",
  // 완전한 마크업
}

테스트 체크리스트

  • Rich Results Test에서 유효성 검증 완료
  • 오류 또는 경고 없음
  • 페이지 콘텐츠와 일치
  • 모든 필수 속성 포함

작업별 질문

  1. 이 페이지는 어떤 유형인가요?
  2. 어떤 풍부한 결과를 얻고 싶으신가요?
  3. 스키마를 채울 수 있는 데이터는 무엇인가요?
  4. 페이지에 기존 스키마가 있나요?
  5. 기술 스택은 무엇인가요?

관련 스킬

  • seo-audit: 스키마 검토를 포함한 전반적인 SEO
  • ai-seo: AI 검색 최적화 (스키마는 AI가 콘텐츠를 이해하는 데 도움)
  • programmatic-seo: 대규모 템플릿화된 스키마
  • site-architecture: 이동 경로 구조 및 내비게이션 스키마 계획

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

ab-testing

When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program. Also use when the user mentions

ads

When the user wants help with paid advertising campaigns on Google Ads, Meta (Facebook/Instagram), LinkedIn, Twitter/X, or other ad platforms. Also use when the user mentions

ai-seo

When the user wants to optimize content for AI search engines, get cited by LLMs, or appear in AI-generated answers. Also use when the user mentions

analytics

When the user wants to set up, improve, or audit analytics tracking and measurement. Also use when the user mentions

aso

When the user wants to audit or optimize an App Store or Google Play listing. Also use when the user mentions

attribution

When the user wants to figure out which marketing actually drives conversions and revenue, choose or interpret an attribution model, or reconcile conflicting numbers across tools. Also use when the user mentions

churn-prevention

When the user wants to reduce churn, build cancellation flows, set up save offers, recover failed payments, or implement retention strategies. Also use when the user mentions

cold-email

Write B2B cold emails and follow-up sequences that get replies. Use when the user wants to write cold outreach emails, prospecting emails, cold email campaigns, sales development emails, or SDR emails. Also use when the user mentions

co-marketing

When the user wants to find co-marketing partners, plan joint campaigns, or brainstorm partnership opportunities. Use when the user says

community-marketing

Build and leverage online communities to drive product growth and brand loyalty. Use when the user wants to create a community strategy, grow a Discord or Slack community, manage a forum or subreddit, build brand advocates, increase word-of-mouth, drive community-led growth, engage users post-signup, or turn customers into evangelists. Trigger phrases: \

competitor-profiling

When the user wants to research, profile, or analyze competitors from their URLs. Also use when the user mentions

competitors

When the user wants to create competitor comparison or alternative pages for SEO and sales enablement. Also use when the user mentions

content-strategy

When the user wants to plan a content strategy, decide what content to create, or figure out what topics to cover. Also use when the user mentions

copy-editing

When the user wants to edit, review, or improve existing marketing copy, or refresh outdated content. Also use when the user mentions

copywriting

When the user wants to write, rewrite, or improve marketing copy for any page — including homepage, landing pages, pricing pages, feature pages, about pages, or product pages. Also use when the user says

coreyhaines31/ab-test-setup

When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," "hypothesis," "should I test this," "which version is better," "test two versions," "statistical significance," "how long should I run this test," "growth experiments," "experiment velocity," "experiment backlog," "ICE score," "experimentation program," or "experiment playbook." Use this whenever someone is comparing two approaches and wants to measure which performs better, or when they want to build a systematic experimentation practice. For tracking implementation, see analytics-tracking. For page-level conversion optimization, see page-cro.

coreyhaines31/analytics-tracking

When the user wants to set up, improve, or audit analytics tracking and measurement. Also use when the user mentions "set up tracking," "GA4," "Google Analytics," "conversion tracking," "event tracking," "UTM parameters," "tag manager," "GTM," "analytics implementation," "tracking plan," "how do I measure this," "track conversions," "attribution," "Mixpanel," "Segment," "are my events firing," or "analytics isn't working." Use this whenever someone asks how to know if something is working or wants to measure marketing results. For A/B test measurement, see ab-test-setup.

coreyhaines31/aso-audit

When the user wants to audit or optimize an App Store or Google Play listing. Also use when the user mentions 'ASO audit,' 'app store optimization,' 'optimize my app listing,' 'improve app visibility,' 'app store ranking,' 'audit my listing,' 'why aren't people downloading my app,' 'improve my app conversion,' 'keyword optimization for app,' or 'compare my app to competitors.' Use when the user shares an App Store or Google Play URL and wants to improve it.

coreyhaines31/competitor-alternatives

When the user wants to create competitor comparison or alternative pages for SEO and sales enablement. Also use when the user mentions 'alternative page,' 'vs page,' 'competitor comparison,' 'comparison page,' '[Product] vs [Product],' '[Product] alternative,' 'competitive landing pages,' 'how do we compare to X,' 'battle card,' or 'competitor teardown.' Use this for any content that positions your product against competitors. Covers four formats: singular alternative, plural alternatives, you vs competitor, and competitor vs competitor. For sales-specific competitor docs, see sales-enablement.

coreyhaines31/email-sequence

When the user wants to create or optimize an email sequence, drip campaign, automated email flow, or lifecycle email program. Also use when the user mentions "email sequence," "drip campaign," "nurture sequence," "onboarding emails," "welcome sequence," "re-engagement emails," "email automation," "lifecycle emails," "trigger-based emails," "email funnel," "email workflow," "what emails should I send," "welcome series," or "email cadence." Use this for any multi-email automated flow. For cold outreach emails, see cold-email. For in-app onboarding, see onboarding-cro.

관련 스킬