polish(home,seo): P0 final review 반영 — 명명 통일 + priceSpec 정리 + 카드 분석

Final code reviewer 후속 3건:
- 명명 통일: Home 카드 "웹사이트" → "웹사이트 제작", "사주 카탈로그" → "AI 사주" /
  JSON-LD "맞춤 개발 외주" → "외주 개발". Footer와 4개 라인 라벨 일치.
- priceSpecification 스텁 제거 (Schema.org price-on-request 관용 표기 아님).
  P1에서 자체 정가 확정 시 Offer.price + priceCurrency 동시 추가 예정.
- 카드별 trackCTAClick("home_v6_custom_build_card_<key>") 5개 추가 — P1 IA
  결정용 라인별 클릭 데이터.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-28 02:47:36 +09:00
parent 47e2460f8f
commit 3033572ecb
2 changed files with 4 additions and 11 deletions

View File

@@ -99,13 +99,9 @@ const jsonLd = {
'@type': 'Offer',
url: 'https://jaengseung-made.com/freelance',
availability: 'https://schema.org/InStock',
priceSpecification: {
'@type': 'PriceSpecification',
priceCurrency: 'KRW',
},
itemOffered: {
'@type': 'Service',
name: '맞춤 개발 외주',
name: '외주 개발',
url: 'https://jaengseung-made.com/freelance',
description: '7년차 백엔드 개발자의 1:1 맞춤 소프트웨어 개발 외주. 자동화·API·웹/모바일 등 사이트 한정가로 제공.',
serviceType: 'Custom Software Development',
@@ -117,10 +113,6 @@ const jsonLd = {
'@type': 'Offer',
url: 'https://jaengseung-made.com/services/website',
availability: 'https://schema.org/InStock',
priceSpecification: {
'@type': 'PriceSpecification',
priceCurrency: 'KRW',
},
itemOffered: {
'@type': 'Service',
name: '웹사이트 제작',

View File

@@ -302,14 +302,15 @@ export default function Home() {
<div className="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-5 gap-4 mb-12">
{[
{ href: '/freelance', label: '외주 개발', desc: '맞춤 솔루션 외주', key: 'freelance' },
{ href: '/services/website', label: '웹사이트', desc: '기업·브랜드 사이트', key: 'website' },
{ href: '/services/website', label: '웹사이트 제작', desc: '기업·브랜드 사이트', key: 'website' },
{ href: '/freelance', label: '자동화', desc: 'RPA · API 연동', key: 'automation' },
{ href: '/saju', label: '사주 카탈로그', desc: 'AI 사주 솔루션', key: 'saju' },
{ href: '/saju', label: 'AI 사주', desc: 'AI 사주 솔루션', key: 'saju' },
{ href: '/services/blog', label: '블로그 자동화', desc: '수익 엔진 팩', key: 'blog' },
].map((card) => (
<Link
key={card.key}
href={card.href}
onClick={() => trackCTAClick(`home_v6_custom_build_card_${card.key}`)}
className="group rounded-2xl border border-white/15 bg-white/[0.02] p-5 hover:border-white/40 hover:bg-white/[0.05] transition flex flex-col"
>
<p className="font-bold text-white text-sm mb-1.5">{card.label}</p>