Fix the last 1,370 broken internal links, empty PT page and canonicals

Broken internal links: 1,370 -> 0 occurrences.
- 1,068 resolved context-aware: the same dead path needs a different destination on
  each locale, so resolution is per (page, target), not per string. Old-site routes
  (/contacto/, /servicios*, /consultoria*, /implementacion*, /recursos*) go to the
  page's own locale home or /odoo/ hub; legacy /odoo-ai/ paths are rewritten to
  /odoo-ia/; locale pages linking a root slug get their own locale's version.
- 301 remaining point at inline body links to pages that were planned but never
  written (35 locale hosting articles, 5 old /odoo-ai/ slugs, dead sections). Those
  fall back to the same-language section hub rather than 404.

Empty PT page: pt/odoo-ia/odoo-sistema-reservas-booking-ia-2025/ was 0 bytes and
returned an empty 200 from the PT sitemap. Removed it, its <url> block and every
hreflang alternate pointing at it; the 5 PT pages that linked to it now point at
/pt/odoo-ia/.

Canonicals: 23 relative -> absolute (a relative canonical carries no host, and apex
and www both answer 200). 62 pages had a second canonical added in the previous pass
because theirs was written href-first; duplicates removed, every page now has
exactly one. 404.html deliberately has none.

English homepage: title, description and H1 aligned to the 'odoo experts' query.
This commit is contained in:
Hermes Agent committed 2026-10-24 21:02:54 +00:00
1 parent db788e8d31
commit 582a93e8a6
515 files changed
+1336 -1350

No files matched your search

@@ -18,9 +18,9 @@
<!-- Hreflang -->
<link rel="alternate" hreflang="fr" href="https://www.odoo-expertos.com/fr/odoo-hosting/hosting-odoo-nube-cloud-2026/" />
<link rel="alternate" hreflang="en" href="https://www.odoo-expertos.com/en/odoo-hosting/odoo-cloud-hosting-2026/" />
<link rel="alternate" hreflang="de" href="https://www.odoo-expertos.com/de/odoo-hosting/odoo-cloud-hosting-2026/" />
<link rel="alternate" hreflang="fr" href="https://www.odoo-expertos.com/fr/odoo-hosting/hebergement-odoo-cloud-2026/" />
<link rel="alternate" hreflang="en" href="/fr/odoo-hosting/odoo-18-hosting-2026/" />
<link rel="alternate" hreflang="de" href="/fr/odoo-hosting/odoo-18-hosting-2026/" />
<link rel="alternate" hreflang="fr" href="/fr/odoo-hosting/" />
<link rel="alternate" hreflang="x-default" href="https://www.odoo-expertos.com/odoo-hosting/hosting-odoo-nube-cloud-2026/" />
<!-- Open Graph -->
@@ -1607,7 +1607,7 @@
<section class="cta-banner fade-in">
<h3>Necesitas Ayuda con tu Hosting Cloud pour Odoo?</h3>
<p>Nuestro equipo de expertos puede ayudarte a disenar, implementar y optimizar tu infraestructura cloud pour Odoo. Consultoria inicial gratuita.</p>
<a href="/contacto/" class="cta-btn">Solicitar Consultoria Gratuita</a>
<a href="/fr/#contact" class="cta-btn">Solicitar Consultoria Gratuita</a>
</section>
<!-- FAQ Section -->
@@ -1692,7 +1692,7 @@
</div>
</a>
<a href="/fr/odoo-hosting/seguridad-hosting-odoo-2025/" class="related-card">
<a href="/fr/odoo-hosting/" class="related-card">
<div class="related-card-image">&#128274;</div>
<div class="related-card-content">
<h4>Seguridad en Hosting Odoo</h4>
@@ -1700,7 +1700,7 @@
</div>
</a>
<a href="/fr/odoo-hosting/migracion-odoo-cloud-2025/" class="related-card">
<a href="/fr/odoo-hosting/" class="related-card">
<div class="related-card-image">&#128640;</div>
<div class="related-card-content">
<h4>Migracion de Odoo a la Nube</h4>