PetPawCalc 인수인계 문서

최종 갱신: 2026-07-12 (2차) 저장소: canghun13/petpawcalc (GitHub Pages, Jekyll) 운영 도메인: https://petpawcalc.com

이 문서는 새 대화에서 작업을 이어받을 때 이것만 읽으면 바로 작업 가능하도록 작성됨. 작업할 때마다 이 파일을 최신 상태로 갱신하고 push할 것.


0. 작업 방식 (중요 — 반드시 읽을 것)


1. 사이트 개요

디렉토리 구조

_config.yml          # baseurl, permalink(/blog/:slug/), 플러그인, defaults(레이아웃 매핑)
_layouts/
  default.html        # 공통 뼈대, canonical 태그 포함
  post.html           # 블로그 포스트 레이아웃 — Article+FAQPage Schema, 테이블 CSS(table-wrapper), canonical 전부 여기 있음
  tool.html           # 계산기 툴 레이아웃
_includes/
  header.html, footer.html
_posts/               # 블로그 포스트 27개 (2026-MM-DD-slug.md 형식)
tools/                # 계산기 툴 19개 (개별 .html, front matter로 title/description/permalink 지정)
  index.html           # 툴 전체 목록 페이지 (검색 가능)
index.html             # 홈페이지 (툴 카드 전체 노출)
blog/index.html        # 블로그 목록 (Liquid로 site.posts 자동 순회, 신규 포스트 추가해도 별도 수정 불필요)
llms.txt               # LLM 크롤러용 사이트 요약 — 신규 콘텐츠 생성 시 반드시 동기화
CNAME                  # petpawcalc.com (정상 설정 확인됨)

2. 현재 콘텐츠 자산 (2026-07-12 기준)

블로그 포스트 27개

날짜순 전체 목록은 _posts/ 참고. 최근 추가분(2026-07-10, 이번 세션들에서 신규):

계산기 툴 20개 (tools/)

연령: dog-age, cat-age 체중: dog-weight, cat-weight, pet-weight(통합) 발정/임신: dog-heat-cycle, cat-heat-cycle, dog-pregnancy, cat-pregnancy 비용: annual-pet-cost, pet-insurance-cost-estimator, pet-food-calorie 건강/방문: dog-vet-visit-scheduler, cat-vet-visit-scheduler, dog-quality-of-life(Paw Score) 백신: dog-vaccination-schedule-calculator, cat-vaccination-schedule-calculator 수술/케어 비용: spay-neuter-cost-calculator, dental-cleaning-cost-calculator, pet-grooming-cost-calculator(신규, 7/12)

모든 신규 툴은 다음 공통 패턴을 따름:


3. 지금까지의 작업 이력 (세션별 요약)

세션 A — PDF 다운로드 기능 (7/4)

window.print() + print CSS로 5개 계산기(annual-pet-cost, pet-insurance, dog/cat-vet-visit-scheduler, dog-quality-of-life)에 “Save as PDF” 버튼 추가. 여러 차례 시행착오(빈 페이지, 페이지 중복, 마진 안 잡힘 등)를 거쳐 최종적으로 @page@media print 밖 최상위 룰로 두고, body { margin: 20mm !important }가 아니라 프린트 다이얼로그 자체의 여백 설정(“기본”으로)이 핵심이었음. 이후 만든 모든 신규 툴은 처음부터 이 패턴 그대로 사용.

세션 B — SEO 근본 문제 진단 및 수정 (7/4~7/10 초반)

세션 C — GSC 데이터 기반 보강 (7/10, 여러 라운드)

GSC Performance 데이터(쿼리별 노출/순위)를 반복적으로 받아서, 순위가 근접한(30~90위권) 쿼리들을 페이지 title/H1/FAQ에 정확히 매칭시키는 작업을 여러 라운드 진행:

교훈: 순위가 이미 근접한(page 1 근처) 쿼리에 대해, 페이지에 이미 있는 콘텐츠인데 정확한 문구(exact phrase)가 안 박혀 있어서 놓치는 경우가 반복적으로 나타남. 새 콘텐츠보다 기존 페이지의 문구 미세조정이 훨씬 빠르고 효과적.

세션 D — 고아 페이지(orphan page) 문제 (7/10)

신규 백신 계산기 2개를 만들 때 vet-scheduler로는 링크를 걸었지만 반대 방향 링크가 없어서 사이트 내부 링크망에서 고립돼 있던 걸 발견. index/tools-index/footer/llms.txt에는 있어도 콘텐츠 내부 링크가 없으면 Google이 중요도를 낮게 봄 → 이후 신규 툴 만들 때마다 반드시 관련 허브 페이지(vet-scheduler, age-calculator, annual-cost)에서 역링크 추가를 체크리스트에 포함.

세션 E — 신규 콘텐츠 확장 (7/10)

경쟁사 존재로 수요 검증 후 진행:

세션 F — 2차 보강 (7/12, 이번 세션)

GSC 7/12 데이터 확인 → 신규 콘텐츠 필요성 웹 검색으로 검증 → “Dog Pregnancy Signs” 클러스터(13개 쿼리 변형)는 이미 강자들(Pets4Homes, Daily Paws, PetPace)이 있는 레드오션이라 새 글 대신 기존 how-to-tell-if-dog-is-pregnant 포스트 보강으로 처리 (자기잠식 방지). dog-weight-calculator도 adult 체중 체크 기능은 이미 있었는데 FAQ가 puppy 위주였던 걸 보강.

세션 F — 2차 보강 (7/12, 오전)

GSC 7/12 데이터 확인 → 신규 콘텐츠 필요성 웹 검색으로 검증 → “Dog Pregnancy Signs” 클러스터(13개 쿼리 변형)는 이미 강자들(Pets4Homes, Daily Paws, PetPace)이 있는 레드오션이라 새 글 대신 기존 how-to-tell-if-dog-is-pregnant 포스트 보강으로 처리 (자기잠식 방지). dog-weight-calculator도 adult 체중 체크 기능은 이미 있었는데 FAQ가 puppy 위주였던 걸 보강.

세션 G — Pet Grooming Cost Calculator 신규 (7/12, 오후)

GSC 쿼리에는 아직 안 잡히지만(=진짜 블라인드 스팟), 웹 검색으로 grooming cost calculator 경쟁사(calculatorsfordogs.com, usecalcpro.com, calculatorian.com, tooliro.com, agentcalc.com) 다수 확인 → 수요 검증됨. 기존 19개 툴 grep 검색으로 중복 없음 확인 후 신규 제작.


4. GSC 색인 현황 (7/12 기준)

순위 근접 페이지 (다음 라운드에서 우선 재확인할 것)


5. 앞으로 작업할 때 체크리스트

신규 콘텐츠(툴/블로그) 만들 때

  1. 기존 파일과 중복 체크 먼저_posts/, tools/ 목록 grep해서 겹치는 주제 없는지 확인
  2. 웹 검색으로 키워드 경쟁 강도 확인 — 이미 강자 있는 레드오션이면 신규 글보다 기존 페이지 보강을 우선 고려
  3. 감정적으로 민감한 주제(안락사 등)는 계산기 형태가 적절한지 먼저 판단, 애매하면 사용자에게 먼저 물어볼 것
  4. 신규 파일 만들면:
    • front matter 패턴 기존 파일 그대로 따르기 (title/description/permalink 또는 slug/category/date/read_time/faqs)
    • Schema(WebApplication+FAQPage 또는 Article+FAQPage) 반드시 포함, JSON 유효성 python3 -c "json.loads(...)"로 검증
    • .post-cta로 관련 페이지 최소 1~2개 상호 링크
    • 반드시 역방향 링크도 추가할 것 (고아 페이지 방지 — 세션 D 참고)
  5. 공통 파일 4종 동기화: index.html, tools/index.html, _includes/footer.html, llms.txt
    • blog/index.html은 Liquid 자동 순회라 신규 포스트 추가 시 손댈 필요 없음
    • “New” 배지는 최근 것만 유지, 오래된 건 정리 (배지 남발 방지)

보강 작업할 때

  1. GSC Performance 데이터에서 순위 30~90위권, 노출 있는 쿼리 확인
  2. 해당 쿼리가 이미 존재하는 페이지와 매칭되는지 확인 (대부분 매칭됨 — 신규 콘텐츠보다 보강이 우선)
  3. 페이지의 title/H1/FAQ에 정확한 쿼리 문구가 그대로 박혀 있는지 확인 — 없으면 추가 (세션 C의 반복된 패턴)
  4. front matter faqs: 배열과 본문 ## Frequently Asked Questions 섹션 양쪽 다 동일하게 추가할 것 (Schema용 + 가시적 텍스트용)

검증 습관

절대 하지 말 것


6. 다음에 확인해야 할 것 (Open Items)