CommunityRédaction et éditiongithub.com

umairmsm/wp-seo

Étape 5 d'une construction WordPress de site complet : titres et descriptions, URLs canoniques, un propriétaire de schéma et JSON-LD, sitemaps, robots.txt et llms.txt, accès des crawlers IA, redirections (301 vs 302), mappages d'anciennes URLs, Search Console, et ajout des langues une par une avec Polylang (hreflang, chaînes .po/.mo, relecture native). Utilisez pour "SEO", "schéma", "redirection", "anciennes URLs", "traduire le site", "ajouter le français/l'espagnol", "hreflang", "canonique".

Qu'est-ce que wp-seo ?

Ce skill accompagne l'étape 5 d'un projet WordPress structuré en étapes, dédiée au SEO et à l'internationalisation. Il automatise la configuration des balises meta (titres, descriptions, canoniques), la gestion d'un schéma JSON-LD unique (via Rank Math et le code noyau), les sitemaps, le contrôle des robots.txt et llms.txt, et les redirections 301/302 selon des règles projet. Pour les langues supplémentaires, il orchestre l'ajout progressif via Polylang (hreflang, traductions .po/.mo) avec une relecture native avant publication. Le skill inclut des tests automatisés (`npm run test:seo`), une vérification de parité avant chaque changement, et des garde-fous (canoniques correctes, pas de JSON-LD en anglais sur pages traduites, redirections 302 pour les langues non publiées). Il s'intègre avec Search Console et Bing pour la soumission de sitemaps et le suivi d'indexation. Idéal pour les développeurs et chefs de projet qui veulent un SEO fiable et multilingue sur WordPress, en s'appuyant sur des outils comme Claude Code, Cursor ou Codex.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/umairmsm/wp-site-kit/tree/HEAD/skills/wp-seo

Installed? Explore more Rédaction et édition skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Étape 5 : SEO et langues

Objectif : les moteurs de recherche et les assistants IA comprennent chaque page. Les anciennes URLs atterrissent au bon endroit. Chaque langue supplémentaire est aussi correcte que l'originale.

Étapes SEO

  1. Un propriétaire par tâche.
    • Le plugin SEO (Rank Math par défaut) gère les titres, les meta, les sitemaps et le graphe de schéma principal.
    • Le schema.php du noyau ajoute les propres types du site à ce graphe.
    • Désactivez tout plugin de domaine qui imprime son propre schéma, afin d'avoir un seul graphe, pas deux qui se contredisent.
  2. Chaque page dans tests/helpers/site.ts réussit npm run test:seo :
    • titre 10-65 caractères ;
    • description 50-160 ;
    • canonique absolue ;
    • un seul H1 ;
    • attribut lang ;
    • zéro requête Google Fonts. Liste de contrôle et règles d'écriture : references/seo-checklist.md.
  3. Données structurées :
    • Organisation (ou LocalBusiness) une fois.
    • Le type d'élément par page (Service, Product, TouristTrip, Course, …).
    • Fil d'Ariane.
    • FAQ uniquement pour les questions réellement répondues sur la page.
    • Jamais d'Offer sans prix.
    • Validez avec le test de résultats enrichis de Google et le validateur Schema.org.
  4. Robots, sitemap, llms.txt :
    • le site live autorise le crawling et liste le sitemap ; le site de staging bloque tout (le noyau fait cela) ;
    • /llms.txt est servi par le noyau ;
    • décidez selon l'objectif si les crawlers IA peuvent lire le site, puis vérifiez que la edge ne les bloque pas par défaut (wp-ship > cloudflare-edge.md).
  5. Redirections : suivez le docs/reference/REDIRECT_RULES.md du projet. Mappez chaque ancienne URL qui a du trafic ou des backlinks vers sa nouvelle page la plus proche (301, un seul saut), et testez chacune.
  6. Parité avant les grands changements. Avant une refonte, migration ou lancement de langue, capturez le titre, la description, le canonique et le H1 pour chaque URL. Après chaque étape, comparez. Recapturez uniquement pour les changements prévus, avec la raison dans le commit.
  7. Search Console et Bing :
    • vérifiez les deux ;
    • soumettez le sitemap ;
    • surveillez l'indexation des pages chaque semaine pendant le premier mois ;
    • Search Console ne conserve que 16 mois de données, alors exportez ou activez l'export en bloc tôt.

Étapes langues (chaque langue est d'abord un pilote)

Suivez references/multilingual.md. En résumé :

  1. Règle zéro : la langue originale ne change pas. Ses URLs, titres, balises canoniques et texte restent identiques (la vérification de parité le prouve).
  2. Pilote : la base de la langue (Polylang, le sélecteur, hreflang, chaînes dans .po/.mo), puis les pages clés et les éléments principaux. Ensuite une relecture native sur le staging, puis publication.
  3. Le reste arrive par lots, chacun passant par la même relecture.
  4. Une langue non encore publiée répond 302 vers la langue originale, et n'apparaît nulle part : ni dans les sitemaps, ni dans hreflang, ni dans les menus, ni dans le sélecteur.

Porte (cocher dans SITE_STATUS.md)

  • npm run test:seo vert sur le staging ; test de résultats enrichis propre sur une page de chaque type
  • Sitemap, robots.txt et llms.txt corrects pour le site live
  • Plan de redirection des anciennes URLs en place et testé (ou "n/a")
  • Chaque langue supplémentaire : pilote réussi, relecture native effectuée, paires hreflang complètes, canonique par langue

Bugs que nous avons déjà livrés une fois, donc vérifiez-les

  • Le canonique de la page d'accueil traduite pointait vers la page d'accueil originale, ce qui aurait fait perdre le /fr/ des résultats français par Google. Le canonique d'une page traduite est l'URL traduite.
  • Du JSON-LD anglais sur des pages françaises : le schéma doit suivre la langue de la page, ou être omis jusqu'à ce qu'il soit traduit.
  • Une porte qui redirigeait en 301 une langue non publiée vers la page d'accueil. Les portes sont des 302.

Individual skills in this repo

This repo contains 7 individual skills — each has its own dedicated page.

umairmsm/wp-build

Stage 3 of a wp-site-kit WordPress build - local DDEV site, the core must-use plugin (modules), the presentation-only child theme with skins, the content model (custom post types, meta, WP_Query, render functions), and the enquiry pipeline that saves leads before forwarding. Use when building or changing features, templates, content types, forms or plugin modules on a wp-site-kit site.

umairmsm/wp-content

Stage 4 of a wp-site-kit WordPress build - real copy and photos. Content truth (facts only from the owner), AI drafts and owner approval, claims audits, banned words and fake proof, legal pages, the photo pipeline (dedupe, real-only, EXIF strip, WebP sizes, alt text, AI image register), and recorded content changes. Use for "write the copy", "add photos", "the owner sent new photos", "check for duplicates", "update prices or text on the live site", "legal pages".

umairmsm/wp-design

Stage 2 of a wp-site-kit WordPress build - design direction, a static HTML/CSS prototype with design tokens, owner sign-off with screenshots, self-hosted fonts, and porting the approved look into a swappable WordPress skin. Use for "design the site", "new look", "redesign", "change colours or fonts", "make a new skin", "port the prototype to WordPress".

umairmsm/wp-kickoff

Stage 1 of a wp-site-kit WordPress build. Use when starting a new WordPress website or taking over or rebuilding an existing one - discovery brief, stack decision, creating the project with bin/wp-site-new, locked decisions, private repo and credentials inventory. Triggers - "new WordPress site", "start a client website", "rebuild this site", "take over this WordPress site".

umairmsm/wp-operate

Stage 8 of a wp-site-kit WordPress build and everything after launch - backups with an off-machine copy, restore drills, the disaster-recovery runbook, credentials inventory, update policy, alerts, and working from more than one machine (bridge file, workstation doctor, encrypted state bundle, rescuing unpushed work). Use for "backup", "restore", "move to a new machine/server", "update plugins", "what if the server dies", "work from the cloud box", "set up a second machine".

umairmsm/wp-ship

Stage 7 of a wp-site-kit WordPress build - staging behind Cloudflare Access, server hardening, safe deploys from a commit (scripts/deploy-safe.sh), database content changes, the launch audit, DNS cutover without breaking a running business, and the first week after launch. Use for "deploy", "set up staging", "go live", "launch", "cutover", "move DNS", "harden the server".

umairmsm/wp-site

Start here for any WordPress website built with wp-site-kit, from an empty folder to a live site. Use when someone says "build a WordPress site", "new website for a client", "where are we on the site", "what is next before launch", or asks to continue a site project. Finds the current stage from SITE_STATUS.md, applies the hard rules, and hands over to the right stage skill.

Skills associés