feat: implementar SEO completo com sitemap, robots.txt, JSON-LD schema e Google Search Console docs

This commit is contained in:
Erik
2025-12-03 17:37:41 -03:00
parent 16de9f48b8
commit 037072d297
5 changed files with 342 additions and 0 deletions

View File

@@ -0,0 +1,82 @@
'use client';
export function JsonLdScript() {
const organizationSchema = {
'@context': 'https://schema.org',
'@type': 'LocalBusiness',
name: 'Octto Engenharia',
description: 'Especialistas em engenharia de movimentação de carga e segurança do trabalho',
url: 'https://octto-engenharia.com',
logo: 'https://octto-engenharia.com/logo.png',
image: 'https://octto-engenharia.com/og-image.jpg',
telephone: '+55 13 99803-0036',
email: 'contato@octto-engenharia.com',
areaServed: {
'@type': 'GeoShape',
addressCountry: 'BR',
},
sameAs: [
'https://www.instagram.com/octtoengenharia',
'https://www.linkedin.com/company/octto-engenharia',
],
address: {
'@type': 'PostalAddress',
addressCountry: 'BR',
addressLocality: 'Jundiaí',
addressRegion: 'SP',
},
priceRange: '$$',
serviceType: [
'Engenharia de movimentação de carga',
'Projetos de içamento',
'Laudos técnicos',
'Consultoria de segurança',
],
};
const navigationSchema = {
'@context': 'https://schema.org',
'@type': 'SiteNavigationElement',
'url': [
{
'@type': 'CollectionPage',
name: 'Projetos',
url: 'https://octto-engenharia.com/projetos',
description: 'Portfólio de projetos de engenharia de movimentação de carga',
},
{
'@type': 'CollectionPage',
name: 'Serviços',
url: 'https://octto-engenharia.com/servicos',
description: 'Serviços especializados em engenharia e segurança do trabalho',
},
{
'@type': 'AboutPage',
name: 'Sobre',
url: 'https://octto-engenharia.com/sobre',
description: 'Conheça mais sobre a Octto Engenharia',
},
{
'@type': 'ContactPage',
name: 'Contato',
url: 'https://octto-engenharia.com/contato',
description: 'Entre em contato com a Octto Engenharia',
},
],
};
return (
<>
<script
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(organizationSchema) }}
suppressHydrationWarning
/>
<script
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(navigationSchema) }}
suppressHydrationWarning
/>
</>
);
}