admin/lib/seo/priorityLandings.ts
alisaza e1eaf5eff5 feat: initial ghabilee-admin backoffice app
Extract admin dashboard from ghabilee-frontend2 into a dedicated Next.js
app for backoffice.ghabilee.ir (no SEO indexing / Clarity).
2026-09-05 13:12:59 +03:30

38 lines
1.2 KiB
TypeScript

import { texts } from '@/texts'
export interface PriorityLandingContent {
categorySlug: string
citySlug: string
title: string
description: string
intro: string
highlights: readonly string[]
faqs: readonly { question: string; answer: string }[]
}
const PRIORITY_LANDING_KEYS = [
{ categorySlug: 'arts-culture', citySlug: 'tehran' },
{ categorySlug: 'learning-experience', citySlug: 'tehran' },
{ categorySlug: 'games-entertainment', citySlug: 'tehran' },
{ categorySlug: 'sports-adventure', citySlug: 'tehran' },
{ categorySlug: 'food-gatherings', citySlug: 'tehran' },
{ categorySlug: 'conversation-connection', citySlug: 'tehran' },
] as const
export const PRIORITY_LANDINGS: PriorityLandingContent[] = PRIORITY_LANDING_KEYS.map(({ categorySlug, citySlug }) => {
const content = texts.seo.priorityLandings[categorySlug][citySlug]
return {
categorySlug,
citySlug,
title: content.title,
description: content.description,
intro: content.intro,
highlights: content.highlights,
faqs: content.faqs,
}
})
export const getPriorityLanding = (categorySlug: string, citySlug: string) =>
PRIORITY_LANDINGS.find((landing) => landing.categorySlug === categorySlug && landing.citySlug === citySlug)