
02 — 화면과 개요
- 읽기 흐름
- 목록 → 본문 → 관련 글
- 멀티테넌트
- 단일 라우트, N개 채널
- 검색 신호
- canonical / hreflang / JSON-LD
- 클라이언트
- Yurasis 플랫폼
- 역할
- 공개 정보 구조, 아티클 읽기 UX, 멀티테넌트 렌더링, 기술 SEO, 유입 분석
03 — 멀티테넌트 리더
하나의 퍼블리싱 시스템으로 모든 고객 채널 제공
아티클 리더는 /[lang]/article/[blogSlug]/[postSlug]에 위치합니다. blogSlug 세그먼트가 어떤 블로그의 설정을 적용할지 선택합니다. 주색, 이름, 카테고리, AdSense 퍼블리셔 ID, 사이트 인증 태그 모두 블로그 레코드에서 옵니다. 블로그별 배포, 코드베이스, 빌드가 없습니다.
목록에서는 카테고리와 태그로 글을 찾고, 리더에서는 제목·대표 이미지·캡션·제목 계층·목차 앵커·관련 링크를 쉽게 훑을 수 있습니다. 이 케이스 스터디가 연결하는 Yurasis 가이드 채널도 같은 공개 계약을 사용합니다.
04 — SEO
검색 준비 상태를 리더의 기본 계약으로
각 아티클 페이지는 BlogPosting(헤드라인, 설명, 저자, 퍼블리셔, 이미지, wordCount, timeRequired), Blog(퍼블리셔 참조), BreadcrumbList(3단계: Yurasis → 블로그 → 포스트), FAQPage(포스트에 faqSchema 배열이 있는 경우) 네 개의 블록을 서버 HTML의 <script type="application/ld+json">으로 삽입합니다.
hreflang은 발행된 번역 참조에서만 만듭니다. canonicalTranslation()은 요청한 언어의 색인 가능한 번역을 우선하고, 채널 기본 언어와 한국어·영어 순서로 대체해 지원하지 않는 언어나 초안이 검색 대상으로 섞이지 않게 합니다.
05 — 관련 포스트
한 편을 읽은 뒤에도 탐색이 이어지도록
포스트에 카테고리가 있으면 리더는 동일 카테고리에서 최대 6개를 가져와 현재 포스트를 제외한 4개를 관련 포스트 그리드로 렌더링합니다. 카테고리가 없으면 포스트의 첫 번째 태그로 폴백합니다. 임베딩이나 ML 모델 없이 요청 시간에 필터링된 API 호출만 사용합니다.
카드는 공개 URL 규칙과 독자의 언어 설정을 유지합니다. 글 한 편을 읽고 끝나는 화면이 아니라 같은 채널 안에서 다음 정보를 자연스럽게 찾는 흐름입니다.
06 — 분석
페이지를 먼저 읽게 하고, 측정은 그다음에
조회수는 하이드레이션 후 keepalive fetch로 POST 요청을 보내는 ViewTracker 클라이언트 컴포넌트가 증가시킵니다. 서버는 조회 이벤트를 기다리지 않고 아티클을 렌더링합니다. 독자가 보는 조회수는 viewCount + 1로 API 확인 전에 현재 방문을 반영합니다.
조회 이벤트와 함께 유입 정보도 기록하고, 일별 메트릭은 별도 작업에서 집계합니다. 공개 리더는 속도와 가독성에 집중하고 대시보드는 필요한 성과 데이터를 받습니다.
인터랙티브 빌드
Yurasis 아티클
실제 Yurasis 가이드 채널에서 목록을 둘러보고 글을 열어 보세요. 반응형 리더, 화면 캡션, 목차 앵커, 관련 글과 검색엔진용 구조화 데이터가 함께 동작합니다.