Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| e983152286 | |||
| d15d2fecdc | |||
| a9f1b98660 | |||
| 3f20621ffb |
@@ -1,38 +1,20 @@
|
|||||||
import type { Metadata } from "next";
|
import type { Metadata } from "next";
|
||||||
import { Inter } from "next/font/google";
|
import { Inter } from "next/font/google";
|
||||||
import "./globals.css";
|
import "./globals.css";
|
||||||
import { ServiceWrapper } from "@/components/ServiceWrapper";
|
|
||||||
import Tag from "@/tag/Tag";
|
|
||||||
|
|
||||||
const inter = Inter({
|
const inter = Inter({ subsets: ["latin"] });
|
||||||
variable: "--font-inter", subsets: ["latin"],
|
|
||||||
});
|
|
||||||
|
|
||||||
export const metadata: Metadata = {
|
export const metadata: Metadata = {
|
||||||
title: "Union Roofing | Expert Roofing Solutions & Installation", description: "Premier roofing services with 25+ years experience. Expert installation, repair, and maintenance for residential and commercial properties. Free quote available.", keywords: "roofing, roof installation, roof repair, roofing contractor, professional roofer, residential roofing, commercial roofing", openGraph: {
|
title: "Union Roofing - Premier Roofing Solutions", description: "Expert roofing services with 20+ years of experience. From installation to repairs, we deliver quality craftsmanship and lasting protection for your property."};
|
||||||
title: "Union Roofing - Trusted Roofing Services", description: "Get expert roofing solutions from licensed professionals with 25+ years of experience. Free inspections and quotes available.", siteName: "Union Roofing", type: "website"
|
|
||||||
},
|
|
||||||
twitter: {
|
|
||||||
card: "summary_large_image", title: "Union Roofing - Premier Roofing Services", description: "Expert roofing installation, repair, and maintenance. 2000+ satisfied customers."
|
|
||||||
},
|
|
||||||
robots: {
|
|
||||||
index: true,
|
|
||||||
follow: true,
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
export default function RootLayout({
|
export default function RootLayout({
|
||||||
children,
|
children,
|
||||||
}: Readonly<{
|
}: {
|
||||||
children: React.ReactNode;
|
children: React.ReactNode;
|
||||||
}>) {
|
}) {
|
||||||
return (
|
return (
|
||||||
<html lang="en" suppressHydrationWarning>
|
<html lang="en">
|
||||||
<ServiceWrapper>
|
<body className={inter.className}>{children}
|
||||||
<body className={`${inter.variable} antialiased`}>
|
|
||||||
<Tag />
|
|
||||||
{children}
|
|
||||||
|
|
||||||
<script
|
<script
|
||||||
dangerouslySetInnerHTML={{
|
dangerouslySetInnerHTML={{
|
||||||
__html: `
|
__html: `
|
||||||
@@ -1400,7 +1382,6 @@ export default function RootLayout({
|
|||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
</body>
|
</body>
|
||||||
</ServiceWrapper>
|
|
||||||
</html>
|
</html>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -200,8 +200,8 @@ export default function LandingPage() {
|
|||||||
background={{ variant: "sparkles-gradient" }}
|
background={{ variant: "sparkles-gradient" }}
|
||||||
useInvertedBackground={false}
|
useInvertedBackground={false}
|
||||||
inputPlaceholder="your@email.com"
|
inputPlaceholder="your@email.com"
|
||||||
buttonText="Get Free Quote"
|
buttonText="Get Free Quote Today"
|
||||||
termsText="We respect your privacy. We'll only use your email to send you a quote and follow-up information."
|
termsText="Limited-time free inspections available—no obligation. We respect your privacy and will only use your email to send you a quote and follow-up information."
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user