5.1 KiB
Guide SEO - oki-foundation.org
Ce document décrit l'optimisation SEO du site oki-foundation.org (V3, SvelteKit statique).
📋 Fichiers SEO
1. robots.txt
Emplacement : static/robots.txt (servi à /robots.txt)
Permet aux moteurs de recherche d'indexer tout le contenu du site et indique l'emplacement du sitemap.
User-agent: *
Allow: /
Sitemap: https://oki-foundation.org/sitemap.xml
2. sitemap.xml
Emplacement : static/sitemap.xml (servi à /sitemap.xml)
Liste les 8 pages du site avec priorités et fréquences :
/et/en/(priorité 1.0, hebdomadaire)/dons/et/en/donate/(0.6, mensuelle)/presse/et/en/press/(0.5, mensuelle)/mentions-legales/et/en/legal-notice/(0.3, mensuelle)
À mettre à jour : lors de l'ajout de nouvelles pages.
🏷️ Meta Tags
Tous les meta tags sont centralisés dans le composant src/lib/components/Seo.svelte, alimenté par src/lib/i18n/{locale}/site.json. Chaque page l'invoque avec ses props :
<Seo title="Titre de la page" description="Description spécifique" path="/ma-page/" locale="fr" />
- Title :
Titre | ORGANISATION KA INTERNATIONALE(home :… | OKI) - Description : par page, sinon
site.description - Keywords :
site.keywords· Author :site.name - Canonical URL :
https://oki-foundation.org{path}— évite le contenu dupliqué - Hreflang :
fr,en,x-default, calculés viaalternatePath()(src/lib/i18n/index.ts)
Open Graph (10 balises)
<meta property="og:type" content="website">
<meta property="og:url" content="https://oki-foundation.org/…">
<meta property="og:title" content="…">
<meta property="og:description" content="…">
<meta property="og:image" content="https://oki-foundation.org/images/logo-512x512.png">
<meta property="og:image:width" content="512">
<meta property="og:image:height" content="512">
<meta property="og:image:alt" content="…">
<meta property="og:locale" content="fr_FR">
<meta property="og:site_name" content="ORGANISATION KA INTERNATIONALE">
Twitter Cards
summary_large_image + url, title, description, image, image:alt — self-hébergées comme tout le reste.
📊 Structured Data (JSON-LD)
Deux blocs injectés par Seo.svelte sur toutes les pages :
- Organization : nom (OKI), URL, logo, description, adresse (36 Rue Lethière, Basse-Terre 97100, GP), contact (kontak@oki-foundation.org), sameAs (niyaj, kute, labola, liberapay),
foundingDate: 2024,nonprofitStatus. - MusicGroup : DJANGOKAM (genres Reggae/Zouk/Konpa/K-pop, djangokam.pawol.nu, membre OKI).
🔍 Attributs lang
L'attribut lang du <html> est posé au prerender par src/hooks.server.ts (fr par défaut, en sous /en/), et data-locale pilote la redirection de langue (static/lang-redirect.js). Les microcopies en kréyòl (404, hors-ligne) portent lang="gcf".
🎯 Bonnes pratiques
Ajouter une nouvelle page
- Créer
src/routes/ma-page/+page.svelteavec<Seo>renseigné - Ajouter la paire FR↔EN dans
PATH_PAIRS(src/lib/i18n/index.ts) - Mettre à jour
static/sitemap.xml - Ajouter un lien dans
src/lib/i18n/*/navigation.jsonsi nécessaire
🚀 Tests et validation
Outils recommandés
- Google Search Console - Soumettre le sitemap
- Facebook Sharing Debugger - https://developers.facebook.com/tools/debug/
- Schema Markup Validator - https://validator.schema.org/
- Google Rich Results Test - https://search.google.com/test/rich-results
Commandes utiles (sur npm run preview)
curl http://localhost:4173/robots.txt
curl http://localhost:4173/sitemap.xml
curl http://localhost:4173/ | grep -oE '(property|name)="(og:|twitter:)[^"]*"'
📈 Suivi et amélioration
Améliorations futures possibles
- Pages dédiées pour chaque service Fédiverse
- FAQ avec Schema.org FAQPage
- Breadcrumbs avec données structurées
- Hreflang pour d'autres langues (créole…)
🌍 Mots-clés ciblés
Primaires
- Organisation Ka Internationale · OKI · Fédiverse Guadeloupe · Alternatives GAFAM
Secondaires
- PeerTube / Mastodon / Nextcloud / Castopod Guadeloupe · Logiciel libre Antilles · Médias libres Caraïbes · Hébergement éthique · Langues créoles
Longue traîne
- "alternative libre à YouTube Guadeloupe" · "hébergement PeerTube Martinique" · "réseau social décentralisé Antilles" · "promotion langues créoles numérique"
📝 Checklist SEO
- Robots.txt configuré
- Sitemap.xml (8 URLs, dates à jour)
- Meta description sur toutes les pages
- Balises title optimisées
- URL canoniques
- Open Graph (10 balises, og:image self-hébergée)
- Twitter Cards
- JSON-LD Organization + MusicGroup
- Logo haute résolution (512×512)
- Images avec attributs alt
- Performance (Lighthouse mobile ≥ 90, mesuré à 91)
- Mobile-friendly (responsive, vérifié Lighthouse)
- HTTPS activé et HSTS configuré
- Hreflang FR/EN/x-default
- Google Search Console configuré
- Analytics installé (optionnel, respectueux RGPD — rester sans tiers)