53 lines
1.3 KiB
TypeScript
53 lines
1.3 KiB
TypeScript
import { notFound } from "next/navigation"
|
|
import { generateRegistryMetadata, generateRegistryStructuredData } from "@/lib/seo"
|
|
import { getPageBySlug } from "@/lib/wordpress-data-loader"
|
|
import { ContactPage } from "@/components/contact-page"
|
|
import type { Metadata } from "next"
|
|
|
|
const WORDPRESS_SLUG = "contact-us"
|
|
|
|
export async function generateMetadata(): Promise<Metadata> {
|
|
const page = getPageBySlug(WORDPRESS_SLUG)
|
|
|
|
if (!page) {
|
|
return {
|
|
title: "Page Not Found | Rocky Mountain Vending",
|
|
}
|
|
}
|
|
|
|
return generateRegistryMetadata("contactUs", {
|
|
date: page.date,
|
|
modified: page.modified,
|
|
image: page.images?.[0]?.localPath,
|
|
})
|
|
}
|
|
|
|
export default async function ContactUsPage() {
|
|
try {
|
|
const page = getPageBySlug(WORDPRESS_SLUG)
|
|
|
|
if (!page) {
|
|
notFound()
|
|
}
|
|
|
|
const structuredData = generateRegistryStructuredData("contactUs", {
|
|
datePublished: page.date,
|
|
dateModified: page.modified || page.date,
|
|
})
|
|
|
|
return (
|
|
<>
|
|
<script
|
|
type="application/ld+json"
|
|
dangerouslySetInnerHTML={{ __html: JSON.stringify(structuredData) }}
|
|
/>
|
|
<ContactPage />
|
|
</>
|
|
)
|
|
} catch (error) {
|
|
if (process.env.NODE_ENV === "development") {
|
|
console.error("Error rendering Contact Us page:", error)
|
|
}
|
|
notFound()
|
|
}
|
|
}
|