fix(i18n): localise extensionless directory links in the DE/ES pages

build-i18n.py's rebase_paths() only re-pointed a root-absolute page link when it
contained ".html", so extensionless directory links stayed on the EN route even
when the language had its own copy (`/odoo-erp-automation-bootcamp/` on all four
DE and ES pages, and `/` on the DE/ES bootcamp pages). Same guard as the .html
branch: localise only when <lang>/<path>/index.html exists.

Re-applied the rebasing to the 8 already-built DE/ES pages (work/i18n/
relocalise-links.py) - a full re-transform is not safe for them because the
switcher-slot/hero rework means repo pages are not raw transform output. 18 refs
in 8 files. The DE/ES homepages were the stale case: their body links were built
before support.html/odoo-hosting-2027.html existed in that language and were
never revisited.

check-links.py now flags an EN-route page link whose language has its own copy:
0 such links on all 10 DE/ES pages after the rebuild. test-build.py 107 passed;
verify-html.py 0 problems.
This commit is contained in:
oliver committed 2026-10-27 19:12:47 +00:00
1 parent 268b2645e2
commit 12704a5618
8 files changed
+18 -18

No files matched your search

+5 -5
View File
@@ -259,7 +259,7 @@
</div>
<div class="hero-actions">
<a href="#pricing" class="btn btn-brass">Pläne &amp; Preise ansehen &rarr;</a>
<a href="/support.html" class="btn btn-outline">So funktioniert es</a>
<a href="/de/support.html" class="btn btn-outline">So funktioniert es</a>
</div>
</div>
</section>
@@ -387,7 +387,7 @@
<div class="faq-a"><p>Nein. Wettbewerbsfähige Preise für unsere gemeinsamen Kunden liegen in unserem eigenen Interesse.</p></div>
</div>
</div>
<a href="/support.html" class="faq-link">Alle Fragen &rarr;</a>
<a href="/de/support.html" class="faq-link">Alle Fragen &rarr;</a>
</div>
</section>
@@ -484,7 +484,7 @@
</div>
</div>
<p class="pricing-cta-note">Geld sparen, weniger Verwaltung</p>
<p class="pricing-cta-note"><a href="/odoo-hosting-2027.html"><strong>Alle Wege vergleichen, Odoo 2027 zu hosten &rarr;</strong></a></p>
<p class="pricing-cta-note"><a href="/de/odoo-hosting-2027.html"><strong>Alle Wege vergleichen, Odoo 2027 zu hosten &rarr;</strong></a></p>
</div>
</section>
@@ -509,7 +509,7 @@
<option value="Netherlands">Niederlande (Amsterdam)</option>
<option value="UK">Vereinigtes Königreich (London)</option>
</select>
<a id="orderBuyBtn" href="/support.html#contact" class="btn btn-brass ow-buy">Weiter zu Stripe &rarr;</a>
<a id="orderBuyBtn" href="/de/support.html#contact" class="btn btn-brass ow-buy">Weiter zu Stripe &rarr;</a>
<p class="ow-note">&#128274; Sichere Stripe-Zahlung &middot; Karte für den Kauf erforderlich, nicht für den Start.</p>
</div>
</div>
@@ -631,7 +631,7 @@
<div>
<h4>Nützliche Links</h4>
<ul>
<li><a href="/odoo-erp-automation-bootcamp/">ODOO Bootcamp</a></li>
<li><a href="/de/odoo-erp-automation-bootcamp/">ODOO Bootcamp</a></li>
<li><a href="/de/odoo-hosting-2027.html">ODOO Hosting in 2027</a></li>
<li><a href="/de/support.html">Support</a></li>
<li><a href="/legal.html">Rechtliches</a></li>