openGraph updated for three language
This commit is contained in:
133
app/layout.tsx
133
app/layout.tsx
@@ -18,6 +18,32 @@ const geistMono = Geist_Mono({
|
|||||||
subsets: ["latin"],
|
subsets: ["latin"],
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// openGraphData tipini aniq belgilaymiz
|
||||||
|
const openGraphData: Record<
|
||||||
|
"uz" | "ru" | "en",
|
||||||
|
{ title: string; description: string; locale: string }
|
||||||
|
> = {
|
||||||
|
uz: {
|
||||||
|
title: "Ignum Technologies - Professional Fire Safety Systems",
|
||||||
|
description:
|
||||||
|
"Tijorat va uy-joy ob’ektlari uchun yong‘in aniqlash, bostirish va signalizatsiya tizimlarini o‘z ichiga olgan to‘liq yong‘in himoyasi yechimlari.",
|
||||||
|
locale: "uz_UZ",
|
||||||
|
},
|
||||||
|
ru: {
|
||||||
|
title:
|
||||||
|
"Ignum Technologies - Профессиональные системы пожарной безопасности",
|
||||||
|
description:
|
||||||
|
"Полные решения по пожарной защите, включая системы обнаружения, тушения и сигнализации для коммерческих и жилых объектов.",
|
||||||
|
locale: "ru_RU",
|
||||||
|
},
|
||||||
|
en: {
|
||||||
|
title: "Ignum Technologies - Professional Fire Safety Systems",
|
||||||
|
description:
|
||||||
|
"Comprehensive fire protection solutions including detection, suppression, and alarm systems for commercial and residential properties.",
|
||||||
|
locale: "en_US",
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
export const metadata: Metadata = {
|
export const metadata: Metadata = {
|
||||||
title: {
|
title: {
|
||||||
default: "Ignum Technologies - Fire Safety Systems Installation & Sales",
|
default: "Ignum Technologies - Fire Safety Systems Installation & Sales",
|
||||||
@@ -39,99 +65,62 @@ export const metadata: Metadata = {
|
|||||||
authors: [{ name: "Ignum Technologies" }],
|
authors: [{ name: "Ignum Technologies" }],
|
||||||
creator: "Ignum Technologies",
|
creator: "Ignum Technologies",
|
||||||
publisher: "Ignum Technologies",
|
publisher: "Ignum Technologies",
|
||||||
formatDetection: {
|
formatDetection: { email: false, address: false, telephone: false },
|
||||||
email: false,
|
metadataBase: new URL("https://ignum-tech.com"),
|
||||||
address: false,
|
alternates: { canonical: "/" },
|
||||||
telephone: false,
|
|
||||||
},
|
|
||||||
metadataBase: new URL("https://ignum-tech.com"), // O'zingizning domen manzilingizni kiriting for gitea
|
|
||||||
alternates: {
|
|
||||||
canonical: "/",
|
|
||||||
},
|
|
||||||
openGraph: {
|
|
||||||
type: "website",
|
|
||||||
locale: "uz_UZ",
|
|
||||||
url: "https://ignum-tech.com",
|
|
||||||
siteName: "Ignum Technologies",
|
|
||||||
title: "Ignum Technologies - Professional Fire Safety Systems",
|
|
||||||
description:
|
|
||||||
"Leading provider of fire safety systems installation and sales. Comprehensive fire protection solutions including detection, suppression, and alarm systems for commercial and residential properties.",
|
|
||||||
images: [
|
|
||||||
{
|
|
||||||
url: "/og-image.jpg", // 1200x630 o'lchamda rasm qo'shing
|
|
||||||
width: 1200,
|
|
||||||
height: 630,
|
|
||||||
alt: "Ignum Technologies - Fire Safety Systems",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
url: "/og-image-square.jpg", // 1200x1200 o'lchamda rasm qo'shing
|
|
||||||
width: 1200,
|
|
||||||
height: 1200,
|
|
||||||
alt: "Ignum Technologies Logo",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
twitter: {
|
|
||||||
card: "summary_large_image",
|
|
||||||
title: "Ignum Technologies - Fire Safety Systems Installation & Sales",
|
|
||||||
description:
|
|
||||||
"Professional fire safety systems installation and sales. Protect your property with certified fire detection, suppression, and alarm solutions.",
|
|
||||||
images: ["/twitter-image.jpg"], // 1200x600 o'lchamda rasm qo'shing
|
|
||||||
creator: "@ignumtech", // Twitter username-ingizni kiriting
|
|
||||||
},
|
|
||||||
robots: {
|
|
||||||
index: true,
|
|
||||||
follow: true,
|
|
||||||
googleBot: {
|
|
||||||
index: true,
|
|
||||||
follow: true,
|
|
||||||
"max-video-preview": -1,
|
|
||||||
"max-image-preview": "large",
|
|
||||||
"max-snippet": -1,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
icons: {
|
icons: {
|
||||||
icon: [
|
icon: [
|
||||||
{
|
{ url: "/icon-light-32x32.png", media: "(prefers-color-scheme: light)" },
|
||||||
url: "/icon-light-32x32.png",
|
{ url: "/icon-dark-32x32.png", media: "(prefers-color-scheme: dark)" },
|
||||||
media: "(prefers-color-scheme: light)",
|
{ url: "/icon.svg", type: "image/svg+xml" },
|
||||||
},
|
|
||||||
{
|
|
||||||
url: "/icon-dark-32x32.png",
|
|
||||||
media: "(prefers-color-scheme: dark)",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
url: "/icon.svg",
|
|
||||||
type: "image/svg+xml",
|
|
||||||
},
|
|
||||||
],
|
],
|
||||||
apple: "/apple-icon.png",
|
apple: "/apple-icon.png",
|
||||||
},
|
},
|
||||||
verification: {
|
verification: { google: "your-google-verification-code" },
|
||||||
google: "your-google-verification-code", // Google Search Console verification kodi
|
|
||||||
// yandex: "your-yandex-verification-code", // Agar kerak bo'lsa
|
|
||||||
},
|
|
||||||
};
|
};
|
||||||
|
|
||||||
export default async function RootLayout({
|
export default async function RootLayout({
|
||||||
children,
|
children,
|
||||||
params,
|
params,
|
||||||
}: Readonly<{
|
}: Readonly<{ children: React.ReactNode; params: any }>) {
|
||||||
children: React.ReactNode;
|
|
||||||
params: any;
|
|
||||||
}>) {
|
|
||||||
const { locale } = await params;
|
const { locale } = await params;
|
||||||
const messages: any = await getMessages();
|
const messages: any = await getMessages();
|
||||||
|
|
||||||
|
// Locale ga mos Open Graph ma'lumotini tanlaymiz
|
||||||
|
const og = openGraphData[locale as "uz" | "ru" | "en"] || openGraphData["uz"];
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<html lang={locale} suppressHydrationWarning>
|
<html lang={locale} suppressHydrationWarning>
|
||||||
<head>
|
<head>
|
||||||
{/* Qo'shimcha SEO elementlar */}
|
|
||||||
<link rel="manifest" href="/manifest.json" />
|
<link rel="manifest" href="/manifest.json" />
|
||||||
<meta name="theme-color" content="#FF4500" />
|
<meta name="theme-color" content="#FF4500" />
|
||||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<meta name="apple-mobile-web-app-status-bar-style" content="default" />
|
<meta name="apple-mobile-web-app-status-bar-style" content="default" />
|
||||||
<meta name="apple-mobile-web-app-title" content="Ignum Tech" />
|
<meta name="apple-mobile-web-app-title" content="Ignum Tech" />
|
||||||
|
|
||||||
|
{/* Open Graph */}
|
||||||
|
<meta property="og:type" content="website" />
|
||||||
|
<meta property="og:locale" content={og.locale} />
|
||||||
|
<meta property="og:url" content="https://ignum-tech.com" />
|
||||||
|
<meta property="og:site_name" content="Ignum Technologies" />
|
||||||
|
<meta property="og:title" content={og.title} />
|
||||||
|
<meta property="og:description" content={og.description} />
|
||||||
|
<meta property="og:image" content="/og-image.jpg" />
|
||||||
|
<meta property="og:image:width" content="1200" />
|
||||||
|
<meta property="og:image:height" content="630" />
|
||||||
|
<meta
|
||||||
|
property="og:image:alt"
|
||||||
|
content="Ignum Technologies - Fire Safety Systems"
|
||||||
|
/>
|
||||||
|
|
||||||
|
{/* Twitter */}
|
||||||
|
<meta name="twitter:card" content="summary_large_image" />
|
||||||
|
<meta name="twitter:title" content={og.title} />
|
||||||
|
<meta name="twitter:description" content={og.description} />
|
||||||
|
<meta name="twitter:image" content="/twitter-image.jpg" />
|
||||||
|
<meta name="twitter:creator" content="@ignumtech" />
|
||||||
|
|
||||||
|
{/* Yandex Metrika */}
|
||||||
<Script
|
<Script
|
||||||
id="yandex-metrika"
|
id="yandex-metrika"
|
||||||
strategy="afterInteractive"
|
strategy="afterInteractive"
|
||||||
|
|||||||
Reference in New Issue
Block a user