feat: SEO 메타데이터 전 페이지 적용 + CTA 텍스트 통일
SEO 메타데이터: - app/layout.tsx: title 템플릿, OG/Twitter 메타, robots 추가 - app/freelance/layout.tsx: 외주 개발 전용 메타 (납기 패널티 키워드) - app/saju/layout.tsx: AI 사주 분석 메타 - app/services/lotto/layout.tsx: 로또 번호 추천 메타 - app/services/stock/layout.tsx: 주식 자동 매매 메타 - app/services/automation/layout.tsx: 업무 자동화 메타 - app/services/prompt/layout.tsx: 프롬프트 엔지니어링 메타 - app/services/website/layout.tsx: 홈페이지 제작 메타 - app/services/automation/tools/scraper/layout.tsx: 웹 크롤러 메타 - app/services/automation/tools/ppt/layout.tsx: PPT 자동화 메타 CTA 텍스트 통일: - 주식: "시스템 확인 후 상담 신청 →" → "무료 상담 신청 →" - 프롬프트: "견적 문의" → "무료 상담 신청", "프롬프트 설계 신청 →" → "무료 상담 신청 →" - 자동화: "견적 문의" → "무료 상담 신청" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
26
app/freelance/layout.tsx
Normal file
26
app/freelance/layout.tsx
Normal file
@@ -0,0 +1,26 @@
|
||||
import type { Metadata } from 'next';
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: '외주 개발 의뢰',
|
||||
description:
|
||||
'계약서 먼저, 납기 지키고, 소스코드 100% 인도. 47건 납품 완료. 7년차 백엔드 개발자에게 외주 개발을 맡겨보세요. 납기 지연 시 하루 10만 원 패널티.',
|
||||
keywords: [
|
||||
'외주 개발',
|
||||
'프리랜서 개발자',
|
||||
'웹 개발 외주',
|
||||
'앱 개발 외주',
|
||||
'RPA 개발',
|
||||
'업무 자동화 외주',
|
||||
'소프트웨어 개발',
|
||||
],
|
||||
openGraph: {
|
||||
title: '외주 개발 의뢰 | 쟁승메이드',
|
||||
description:
|
||||
'47건 납품 완료. 계약서 먼저, 납기 패널티, 소스코드 100% 인도. 연락 두절 없는 개발자.',
|
||||
url: 'https://jaengseung-made.com/freelance',
|
||||
},
|
||||
};
|
||||
|
||||
export default function FreelanceLayout({ children }: { children: React.ReactNode }) {
|
||||
return children;
|
||||
}
|
||||
@@ -4,18 +4,53 @@ import "./globals.css";
|
||||
import DashboardShell from "./components/DashboardShell";
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: "쟁승메이드 | 쟁토리의 프리미엄 개발 서비스",
|
||||
title: {
|
||||
default: "쟁승메이드 | 연락 두절 없는 7년차 개발자",
|
||||
template: "%s | 쟁승메이드",
|
||||
},
|
||||
description:
|
||||
"로또 번호 추천, 주식 자동 매매, 프롬프트 엔지니어링, 업무 자동화. 쟁토리가 제공하는 신뢰할 수 있는 개발 서비스.",
|
||||
"계약서 먼저, 납기 지키고, 소스코드 100% 인도. 7년차 대기업 백엔드 개발자가 운영하는 외주 개발·업무 자동화·RPA 서비스.",
|
||||
keywords: [
|
||||
"로또 번호 추천",
|
||||
"주식 자동 매매",
|
||||
"프롬프트 엔지니어링",
|
||||
"외주 개발",
|
||||
"프리랜서 개발자",
|
||||
"업무 자동화",
|
||||
"RPA",
|
||||
"외주 개발",
|
||||
"웹사이트 제작",
|
||||
"로또 번호 추천",
|
||||
"주식 자동 매매",
|
||||
"텔레그램 봇",
|
||||
"엑셀 자동화",
|
||||
"프롬프트 엔지니어링",
|
||||
],
|
||||
authors: [{ name: "박재오", url: "https://jaengseung-made.com" }],
|
||||
creator: "박재오",
|
||||
openGraph: {
|
||||
type: "website",
|
||||
locale: "ko_KR",
|
||||
url: "https://jaengseung-made.com",
|
||||
siteName: "쟁승메이드",
|
||||
title: "쟁승메이드 | 연락 두절 없는 7년차 개발자",
|
||||
description:
|
||||
"계약서 먼저, 납기 지키고, 소스코드 100% 인도. 외주 개발·업무 자동화·RPA 전문.",
|
||||
images: [
|
||||
{
|
||||
url: "https://jaengseung-made.com/og-image.png",
|
||||
width: 1200,
|
||||
height: 630,
|
||||
alt: "쟁승메이드 — 연락 두절 없는 개발자",
|
||||
},
|
||||
],
|
||||
},
|
||||
twitter: {
|
||||
card: "summary_large_image",
|
||||
title: "쟁승메이드 | 연락 두절 없는 7년차 개발자",
|
||||
description: "계약서 먼저, 납기 지키고, 소스코드 100% 인도.",
|
||||
},
|
||||
robots: {
|
||||
index: true,
|
||||
follow: true,
|
||||
googleBot: { index: true, follow: true },
|
||||
},
|
||||
};
|
||||
|
||||
export default function RootLayout({
|
||||
|
||||
27
app/saju/layout.tsx
Normal file
27
app/saju/layout.tsx
Normal file
@@ -0,0 +1,27 @@
|
||||
import type { Metadata } from 'next';
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: 'AI 사주 분석',
|
||||
description:
|
||||
'생년월일시를 입력하면 Gemini AI가 사주팔자를 분석합니다. 일간·오행·대운·세운 기반 12개 항목 상세 해석. 재물운·애정운·직업·건강 포함.',
|
||||
keywords: [
|
||||
'AI 사주',
|
||||
'사주풀이',
|
||||
'사주팔자',
|
||||
'사주 분석',
|
||||
'오행 분석',
|
||||
'대운',
|
||||
'세운',
|
||||
'사주 운세',
|
||||
],
|
||||
openGraph: {
|
||||
title: 'AI 사주 분석 | 쟁승메이드',
|
||||
description:
|
||||
'Gemini AI 기반 사주팔자 분석. 일간·오행·대운·세운·재물운·애정운 12개 항목 해석.',
|
||||
url: 'https://jaengseung-made.com/saju',
|
||||
},
|
||||
};
|
||||
|
||||
export default function SajuLayout({ children }: { children: React.ReactNode }) {
|
||||
return children;
|
||||
}
|
||||
27
app/services/automation/layout.tsx
Normal file
27
app/services/automation/layout.tsx
Normal file
@@ -0,0 +1,27 @@
|
||||
import type { Metadata } from 'next';
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: '업무 자동화 개발',
|
||||
description:
|
||||
'엑셀 자동화, 웹 스크래핑, 이메일 자동 발송, RPA, 텔레그램 봇 개발. 반복 업무를 자동화하여 시간을 절약하세요. 단순 자동화 5만 원~, 1개월 무상 AS.',
|
||||
keywords: [
|
||||
'업무 자동화',
|
||||
'RPA',
|
||||
'엑셀 자동화',
|
||||
'웹 스크래핑',
|
||||
'텔레그램 봇',
|
||||
'이메일 자동화',
|
||||
'반복업무 자동화',
|
||||
'파이썬 자동화',
|
||||
],
|
||||
openGraph: {
|
||||
title: '업무 자동화 개발 | 쟁승메이드',
|
||||
description:
|
||||
'RPA·엑셀·스크래핑·텔레그램 봇. 단순 자동화 5만 원~, 1개월 무상 AS, 계약서 포함.',
|
||||
url: 'https://jaengseung-made.com/services/automation',
|
||||
},
|
||||
};
|
||||
|
||||
export default function AutomationLayout({ children }: { children: React.ReactNode }) {
|
||||
return children;
|
||||
}
|
||||
@@ -241,7 +241,7 @@ export default function AutomationPage() {
|
||||
plan.highlight ? 'bg-cyan-400 text-[#012030] hover:bg-cyan-300' : 'bg-[#04102b] text-white hover:bg-[#0a1f5c]'
|
||||
}`}
|
||||
>
|
||||
견적 문의
|
||||
무료 상담 신청
|
||||
</button>
|
||||
</div>
|
||||
))}
|
||||
|
||||
25
app/services/automation/tools/ppt/layout.tsx
Normal file
25
app/services/automation/tools/ppt/layout.tsx
Normal file
@@ -0,0 +1,25 @@
|
||||
import type { Metadata } from 'next';
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: 'PPT 제작 자동화 도구',
|
||||
description:
|
||||
'엑셀 데이터로 PPT를 자동 생성하는 Python 스크립트. 표지·내용·마무리 슬라이드 자동 구성, 색상 테마 커스터마이징. python-pptx 기반. 무료 다운로드.',
|
||||
keywords: [
|
||||
'PPT 자동화',
|
||||
'파워포인트 자동 생성',
|
||||
'python-pptx',
|
||||
'PPT 제작 도구',
|
||||
'엑셀 PPT 변환',
|
||||
'프레젠테이션 자동화',
|
||||
'무료 PPT 도구',
|
||||
],
|
||||
openGraph: {
|
||||
title: 'PPT 제작 자동화 도구 | 쟁승메이드',
|
||||
description: 'Python + python-pptx 기반 PPT 자동 생성 도구 무료 다운로드. 엑셀 연동 지원.',
|
||||
url: 'https://jaengseung-made.com/services/automation/tools/ppt',
|
||||
},
|
||||
};
|
||||
|
||||
export default function PptLayout({ children }: { children: React.ReactNode }) {
|
||||
return children;
|
||||
}
|
||||
25
app/services/automation/tools/scraper/layout.tsx
Normal file
25
app/services/automation/tools/scraper/layout.tsx
Normal file
@@ -0,0 +1,25 @@
|
||||
import type { Metadata } from 'next';
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: '웹 크롤링·스크래핑 도구',
|
||||
description:
|
||||
'공공데이터·쇼핑몰 가격·뉴스를 자동 수집해 엑셀로 저장하는 Python 웹 스크래퍼. requests + BeautifulSoup4 + openpyxl 기반. 무료 다운로드.',
|
||||
keywords: [
|
||||
'웹 크롤링',
|
||||
'웹 스크래핑',
|
||||
'파이썬 크롤러',
|
||||
'데이터 수집 자동화',
|
||||
'BeautifulSoup',
|
||||
'엑셀 자동화',
|
||||
'무료 크롤러',
|
||||
],
|
||||
openGraph: {
|
||||
title: '웹 크롤링 자동화 도구 | 쟁승메이드',
|
||||
description: 'Python 기반 웹 크롤러 무료 다운로드. 페이지네이션·재시도·엑셀 저장 지원.',
|
||||
url: 'https://jaengseung-made.com/services/automation/tools/scraper',
|
||||
},
|
||||
};
|
||||
|
||||
export default function ScraperLayout({ children }: { children: React.ReactNode }) {
|
||||
return children;
|
||||
}
|
||||
25
app/services/lotto/layout.tsx
Normal file
25
app/services/lotto/layout.tsx
Normal file
@@ -0,0 +1,25 @@
|
||||
import type { Metadata } from 'next';
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: '로또 번호 추천',
|
||||
description:
|
||||
'1,100+회차 빅데이터 기반 로또 번호 분석. 핫/콜드 번호 통계, 몬테카를로 시뮬레이션으로 매주 최적 번호 조합을 제공합니다. 월 900원부터 구독.',
|
||||
keywords: [
|
||||
'로또 번호 추천',
|
||||
'로또 번호 분석',
|
||||
'로또 빅데이터',
|
||||
'로또 통계',
|
||||
'로또 번호 생성',
|
||||
'핫넘버 콜드넘버',
|
||||
],
|
||||
openGraph: {
|
||||
title: '로또 번호 추천 서비스 | 쟁승메이드',
|
||||
description:
|
||||
'1,100+회차 데이터 분석 · 월 900원 구독 · 이메일/텔레그램 자동 발송.',
|
||||
url: 'https://jaengseung-made.com/services/lotto',
|
||||
},
|
||||
};
|
||||
|
||||
export default function LottoLayout({ children }: { children: React.ReactNode }) {
|
||||
return children;
|
||||
}
|
||||
26
app/services/prompt/layout.tsx
Normal file
26
app/services/prompt/layout.tsx
Normal file
@@ -0,0 +1,26 @@
|
||||
import type { Metadata } from 'next';
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: '프롬프트 엔지니어링',
|
||||
description:
|
||||
'ChatGPT·Claude·Gemini에 최적화된 업무 특화 프롬프트 설계. 반복 업무를 AI로 자동화하는 프롬프트 라이브러리 제공. 건당 30,000원~.',
|
||||
keywords: [
|
||||
'프롬프트 엔지니어링',
|
||||
'ChatGPT 프롬프트',
|
||||
'Claude 프롬프트',
|
||||
'AI 프롬프트',
|
||||
'업무 AI 자동화',
|
||||
'프롬프트 최적화',
|
||||
'프롬프트 설계',
|
||||
],
|
||||
openGraph: {
|
||||
title: '프롬프트 엔지니어링 | 쟁승메이드',
|
||||
description:
|
||||
'ChatGPT·Claude 업무 특화 프롬프트 설계. 건당 30,000원~, 납품 후 사용 교육 포함.',
|
||||
url: 'https://jaengseung-made.com/services/prompt',
|
||||
},
|
||||
};
|
||||
|
||||
export default function PromptLayout({ children }: { children: React.ReactNode }) {
|
||||
return children;
|
||||
}
|
||||
@@ -235,7 +235,7 @@ export default function PromptPage() {
|
||||
plan.highlight ? 'bg-violet-400 text-[#0d0a2e] hover:bg-violet-300' : 'bg-[#04102b] text-white hover:bg-[#0a1f5c]'
|
||||
}`}
|
||||
>
|
||||
견적 문의
|
||||
무료 상담 신청
|
||||
</button>
|
||||
</div>
|
||||
))}
|
||||
@@ -254,7 +254,7 @@ export default function PromptPage() {
|
||||
onClick={() => openModal('프롬프트 엔지니어링')}
|
||||
className="inline-flex items-center gap-2 bg-violet-400 hover:bg-violet-300 text-[#0d0a2e] px-8 py-3 rounded-xl font-extrabold text-sm transition-all shadow-lg shadow-violet-900/30"
|
||||
>
|
||||
프롬프트 설계 신청 →
|
||||
무료 상담 신청 →
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
26
app/services/stock/layout.tsx
Normal file
26
app/services/stock/layout.tsx
Normal file
@@ -0,0 +1,26 @@
|
||||
import type { Metadata } from 'next';
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: '주식 자동 매매 프로그램',
|
||||
description:
|
||||
'NAS 서버에서 직접 운영 중인 주식 자동 매매 시스템. RSI·MACD·볼린저밴드 기반 매매 신호를 텔레그램으로 수신하고 자동 매수·매도합니다. 키움·한국투자 연동.',
|
||||
keywords: [
|
||||
'주식 자동 매매',
|
||||
'알고트레이딩',
|
||||
'주식 자동화',
|
||||
'텔레그램 주식 알림',
|
||||
'키움 자동매매',
|
||||
'주식 프로그램',
|
||||
'RSI 매매',
|
||||
],
|
||||
openGraph: {
|
||||
title: '주식 자동 매매 프로그램 | 쟁승메이드',
|
||||
description:
|
||||
'직접 운영 중인 알고트레이딩 시스템. 텔레그램 연동 · 자동 매수매도 · 설치 49,000원~.',
|
||||
url: 'https://jaengseung-made.com/services/stock',
|
||||
},
|
||||
};
|
||||
|
||||
export default function StockLayout({ children }: { children: React.ReactNode }) {
|
||||
return children;
|
||||
}
|
||||
@@ -267,7 +267,7 @@ export default function StockPage() {
|
||||
onClick={() => openModal('주식 자동 매매')}
|
||||
className="inline-flex items-center gap-2 bg-emerald-400 hover:bg-emerald-300 text-[#011225] px-8 py-3 rounded-xl font-extrabold text-sm transition-all shadow-lg shadow-emerald-900/30"
|
||||
>
|
||||
시스템 확인 후 상담 신청 →
|
||||
무료 상담 신청 →
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
27
app/services/website/layout.tsx
Normal file
27
app/services/website/layout.tsx
Normal file
@@ -0,0 +1,27 @@
|
||||
import type { Metadata } from 'next';
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: '홈페이지·웹사이트 제작',
|
||||
description:
|
||||
'기업 홈페이지, 쇼핑몰, SaaS, 포트폴리오까지 반응형 웹사이트 제작. 디자인부터 배포까지 원스톱. 스타터 20만 원~, 계약서 포함, 3개월 유지보수.',
|
||||
keywords: [
|
||||
'홈페이지 제작',
|
||||
'웹사이트 제작',
|
||||
'쇼핑몰 제작',
|
||||
'반응형 웹',
|
||||
'Next.js 개발',
|
||||
'기업 홈페이지',
|
||||
'랜딩페이지 제작',
|
||||
'SEO 최적화',
|
||||
],
|
||||
openGraph: {
|
||||
title: '홈페이지·웹사이트 제작 | 쟁승메이드',
|
||||
description:
|
||||
'기업·쇼핑몰·포트폴리오 웹사이트 제작. 스타터 20만 원~, 반응형 디자인, 계약서 포함.',
|
||||
url: 'https://jaengseung-made.com/services/website',
|
||||
},
|
||||
};
|
||||
|
||||
export default function WebsiteLayout({ children }: { children: React.ReactNode }) {
|
||||
return children;
|
||||
}
|
||||
Reference in New Issue
Block a user