- 템플릿: Planner.astro, lib/plan.ts·tour.ts, styles/plan.css, planStrings, pages plan·en/plan·404. Base 내비 회복 일정 → /plan, 언어 짝 /plan↔/en/plan, 옛 주소 리다이렉트(vercel.json), 사이트맵 - 워커 planner 단계(recovery 다음): scripts/build_planner_data.mjs 가 업종별 기본 규칙표(scripts/template/planner/procedures.plastic|derm.json)에 병원 시술 페이지 원문(recoveryNotes)을 matchKeywords 로 붙이고, 장소는 briefs/<clinic>/planner.places.json(큐레이션) 또는 범용 기본표(관광공사 기준 좌표)로 만든다 - 브리프: viewclinic·oracle 큐레이션 장소. 빈 템플릿(관광 데이터 없음)도 빌드·검증 통과(plan.test 14건) - 이전 세션의 미커밋 작업(피부과 수집·OCR·게이트·언어 스위치, stay 페이지 제거)도 이 커밋에 함께 들어감. docs/prd 변경은 제외 Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
17 lines
1.2 KiB
Plaintext
17 lines
1.2 KiB
Plaintext
---
|
|
// 회복기 스케줄러 한국어 페이지. 본문은 components/Planner.astro. 영어 페이지는 /en/plan.
|
|
import Base from '../layouts/Base.astro';
|
|
import Planner from '../components/Planner.astro';
|
|
import { fact, SITE_NAME, clinicSchema, v } from '../lib';
|
|
const f = fact as Record<string, any>;
|
|
const clinic = v(f.shortName, '병원');
|
|
const site = Astro.site!.toString().replace(/\/$/, '');
|
|
const ld = [
|
|
{ '@type': 'WebPage', '@id': `${site}/plan#page`, name: `${clinic} 회복 일정 플래너`, url: `${site}/plan`, inLanguage: 'ko', isPartOf: { '@id': `${site}/#website` }, about: { '@id': `${fact.url}/#clinic` }, publisher: { '@type': 'Organization', name: SITE_NAME, url: site } },
|
|
clinicSchema(site),
|
|
];
|
|
---
|
|
<Base title="회복 일정 · 입국일, 출국 가능일, 회복기 외출 계획" description={`${clinic} 수술일을 기준으로 입국 권장일, 출국 가능 최소일, 회복기 동안 외출할 수 있는 날과 갈 만한 곳, 병원 근처 숙소를 한 화면에서 정리합니다. 외국에서 오시는 분을 위한 일정표입니다.`} jsonLd={ld} alternates={[{ lang: 'ko', href: '/plan' }, { lang: 'en', href: '/en/plan' }]}>
|
|
<Planner lang="ko" />
|
|
</Base>
|