
Contexte du projet
TaxiGhis est un service de transport professionnel basé à Danjoutin, dans la région de Belfort, en activité depuis 2014. Le site historique reposait sur WordPress + Divi, mis en ligne pour accompagner les premières années de l'activité. En mai 2026, il a été entièrement refondu en Next.js pour gagner en performance, en autonomie et en marge de manœuvre SEO, tout en préservant le référencement déjà acquis sur des requêtes locales clés (taxi Belfort, taxi gare TGV Belfort-Montbéliard, taxi conventionné CPAM).
Pourquoi refondre ?
Après plusieurs années de service, le site WordPress avait accumulé les limites classiques d'un CMS sur l'étagère :
- performances en baisse malgré WP Rocket (CSS critique cassé, images non servies systématiquement en formats modernes) ;
- maintenance lourde : 14 plugins actifs, mises à jour mensuelles, surveillance CVE ;
- SEO bridé par les contraintes de Divi (titles trop longs, descriptions codées en base, scripts non maîtrisés) ;
- budget hébergement et licences Divi à entretenir année après année pour un site qui évolue peu.
L'objectif de la refonte : un site statique, rapide, indépendant d'un CMS, où chaque page est rédigée comme un livrable éditorial, et où l'observabilité technique permet de détecter les régressions avant les utilisateurs.
Solution technique
- Next.js 16 (App Router, Turbopack) — pages générées en SSG/SSR, JSON-LD LocalBusiness, sitemap.ts, robots.ts, redirections 301 typées.
- React 19 + TypeScript strict — composants éditoriaux réutilisables (ServicePage, ArticleShell, BookingForm) avec metadata typée.
- Charte graphique sur mesure — or champagne, bordeaux, ivoire ; responsive sans surcharge CSS.
- OpenTelemetry → SigNoz — traces, logs et métriques via OTLP gRPC.
service.versionpinné au commit SHA. - Postmark + Cloudflare Turnstile — emails de confirmation transactionnels avec DKIM, anti-spam zéro-friction côté utilisateur.
- Docker + Traefik + Let's Encrypt — image multi-stage Node 24 Alpine, reverse-proxy avec certificat automatique, CI/CD self-hosted.
Fonctionnalités développées
Booking en ligne
Formulaire de réservation avec autocomplétion d'adresses (OpenRouteService + BAN), estimation immédiate, jetons HMAC signés pour accepter ou refuser la course par e-mail.
Design éditorial mobile-first
Typographie Playfair Display sur fond noir, palette or champagne et bordeaux, rythme « cadre noir + vue dorée » pour les visuels de blog. Responsive sans Divi.
SEO local maîtrisé
JSON-LD TaxiService / LocalBusiness avec adresse, géolocalisation, horaires 24/7 et catalogue de services. Une URL canonique par requête (gare TGV, EuroAirport, CPAM, événementiel, livraison).
RGPD-ready
Politique de confidentialité dédiée, conditions générales, aucun cookie de mesure d'audience, hébergement en France, transferts UE/US encadrés par clauses contractuelles types.
Observabilité OpenTelemetry
Traces, logs et métriques exportés via OTLP gRPC vers une instance SigNoz auto-hébergée. Chaque déploiement est tagué avec son commit SHA, pour corréler une régression à la livraison qui l'a introduite.
Déploiement reproductible
Image Docker multi-stage Node 24 Alpine, pipeline qui pinne l'image au SHA, déploiement sans interruption derrière Traefik avec certificat Let's Encrypt automatique.
Migration sans casser le SEO
La refonte d'un site existant ne doit pas faire perdre les positions Google déjà acquises. Le plan suivi :
- Audit on-page avant bascule— score 78/100 sur l'ancien WordPress, baseline pour mesurer le gain.
- 301 typées dans next.config.ts — toutes les anciennes URLs WordPress (articles legacy, /contact, /reservation) redirigées en permanent vers les nouvelles canoniques.
- Sauvegarde du WordPress historique — stack isolée sur un sous-domaine avec
X-Robots-Tag: noindex. Zéro contenu dupliqué, archive accessible. - Sitemap.xml + robots.txt soignés— sitemap typé par Next.js, robots.txt qui n'interdit que
/api/, soumission en Search Console. - Audit post-migration — 94/100 immédiat, 98/100 attendu après correction des meta descriptions trop longues.
Résultats
- Score audit on-page : 78 → 94/100 — disparition des 3 erreurs et 21 avertissements WordPress (H1 manquants, alt absents, JS/CSS non minifiés, images orphelines).
- Performance native — pages SSG préchargées, polices auto-optimisées, images optimisées, cache Traefik au reverse-proxy.
- Maintenance simplifiée — plus de plugin à patcher après une CVE. Tout le contenu vit en code, versionné, déployé par pipeline.
- Coût de propriété en baisse — plus de licence Divi ni de plugin payant, infrastructure mutualisée sur le même hyperviseur.
Conclusion
La refonte de TaxiGhis illustre l'intérêt d'abandonner un CMS générique au profit d'une stack Next.js + React taillée sur mesure pour un site vitrine local. Le passage de WordPress à Next.js a été orchestré sans interruption visible côté visiteurs, en préservant les positions SEO acquises depuis 2014. Le site est aujourd'hui plus rapide, plus sobre, plus contrôlé éditorialement, et instrumenté en profondeur pour anticiper toute régression. Une démarche portable à n'importe quel autre site WordPress local arrivé au plafond technique de son CMS.
