À proposParcoursCompétencesProjetsBlog Contact
WP
SEO

Guide SEO technique WordPress : la checklist 50 points pour ranker en 2026

50 optimisations concrètes pour dominer la SERP française en 2026

ST
Stéphane Donna
21 avril 2026 20 min de lecture
CORE WEB VITALS LIGHTHOUSE SCHEMA.ORG SEO SEO TECHNIQUE WORDPRESS CORE WEB VITALS LIGHTHOUSE SCHEMA.ORG SEO SEO TECHNIQUE WORDPRESS

Pourquoi cette checklist existe

En 2026, le SEO technique n’est plus une option : c’est la fondation sur laquelle se construit toute stratégie de contenu. Un article brillant sur un site mal indexé, lent ou mal structuré ne rankera jamais. À l’inverse, une base technique propre démultiplie les efforts éditoriaux.

Cette checklist compile 50 points vérifiés, classés par priorité décroissante, issus de retours terrain sur plus de 30 sites WordPress. Certains sont évidents, d’autres radicalement sous-estimés. Tous sont actionnables aujourd’hui, sur votre thème custom comme sur un thème commercial.

Le meilleur contenu du monde ne rankera pas si Google ne peut pas le lire, le comprendre ou lui faire confiance. Le SEO technique, c'est ouvrir ces trois portes.

1. Indexation & crawl (points 1 à 7)

Si Google ne peut pas crawler ou indexer vos pages, rien d’autre ne compte. Commencez toujours ici.

  1. robots.txt propre : autoriser le crawl des pages publiques, bloquer /wp-admin/ (sauf admin-ajax.php), exposer le sitemap.
  2. Sitemap.xml à jour : soumis à Google Search Console + Bing Webmaster, incluant tous les CPT publics, pas de pages 404/redirigées.
  3. Noindex sur les pages vides : archives d’auteurs peu actifs, pages tags peu peuplées, résultats de recherche interne.
  4. Aucun noindex accidentel : vérifier l’option « Décourager les moteurs » de WP est désactivée en prod.
  5. Pas de contenu en duplicate : rel="canonical" pointant vers la version principale sur chaque page.
  6. Redirections propres : 301 pour permanent, 302 pour temporaire, éviter les chaînes > 2 sauts.
  7. URLs stables : jamais changer un slug une fois la page indexée — ou alors avec une 301 solide.
robots.txt
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /?s=
Disallow: /search/
Disallow: /*?replytocom

Sitemap: https://madebysteph.fr/sitemap.xml

2. Core Web Vitals (points 8 à 14)

Signal de ranking officiel depuis 2021, renforcé en 2024 avec INP qui remplace FID. Les trois métriques doivent rester vertes sur desktop et mobile.

  1. LCP < 2.5s : l’image/heading principal doit s’afficher en moins de 2.5 secondes. Preload de l’image hero, compression WebP/AVIF.
  2. CLS < 0.1 : width/height fixes sur toutes les images, aspect-ratio CSS, réservation de l’espace des pubs.
  3. INP < 200ms : éviter le JS lourd au main thread, décomposer les tâches longues, préférer requestIdleCallback.
  4. TTFB < 600ms : hébergement correct + cache serveur + CDN edge (Cloudflare, Bunny).
  5. Preload fonts critiques : <link rel="preload" as="font" crossorigin> pour la font du H1.
  6. font-display: swap partout, jamais block.
  7. Lazy loading natif : loading="lazy" sur les images below-the-fold et les iframes.
Astuce — mesurer les CWV en prod

Ne vous fiez pas uniquement à Lighthouse en local (données lab). Utilisez Chrome User Experience Report (CrUX) via Search Console → « Signaux web essentiels », ou l’extension Web Vitals en navigation réelle pour voir les vraies données utilisateurs (field data).

3. On-page SEO (points 15 à 24)

Les fondamentaux balise par balise. 90 % des sites sabotent ici sans le savoir.

  1. Un seul H1 par page, contenant le mot-clé cible principal.
  2. Hiérarchie H2 > H3 > H4 stricte, jamais sauter de H2 à H4.
  3. Title tag 50-60 caractères, mot-clé en début, marque en fin.
  4. Meta description 150-160 caractères, persuasive, avec CTA implicite.
  5. URL courte et lisible : /guide-seo-wordpress > /p=4321.
  6. Permaliens « post name » : réglages → permaliens → « Nom de l’article ».
  7. Open Graph + Twitter Card sur chaque page (preview réseaux sociaux).
  8. Favicon + icônes Apple Touch complets via add_theme_support('custom-logo') ou plugin.
  9. Lang attribute : <html lang="fr"> via language_attributes().
  10. Breadcrumbs visibles avec schema.org BreadcrumbList.
inc/seo-meta.php
// Open Graph + Twitter Card basique sans plugin
add_action( 'wp_head', function (): void {
    $title = wp_get_document_title();
    $desc  = is_singular() ? get_the_excerpt() : get_bloginfo( 'description' );
    $img   = is_singular() ? get_the_post_thumbnail_url( null, 'hero-large' ) : '';
    $url   = is_singular() ? get_permalink() : home_url( add_query_arg( null, null ) );

    echo '<meta property="og:title" content="' . esc_attr( $title ) . '">';
    echo '<meta property="og:description" content="' . esc_attr( $desc ) . '">';
    echo '<meta property="og:url" content="' . esc_url( $url ) . '">';
    echo '<meta property="og:type" content="' . ( is_singular( 'post' ) ? 'article' : 'website' ) . '">';
    if ( $img ) echo '<meta property="og:image" content="' . esc_url( $img ) . '">';

    echo '<meta name="twitter:card" content="summary_large_image">';
    echo '<meta name="twitter:title" content="' . esc_attr( $title ) . '">';
} );

4. Images & médias (points 25 à 31)

Les images représentent 50-70 % du poids d’une page WordPress standard. Le levier #1 de la perf est ici.

  1. Format moderne : WebP obligatoire, AVIF si possible (35 % plus léger que WebP).
  2. Alt text descriptif sur toutes les images de contenu — accessibilité + SEO.
  3. srcset + sizes pour le responsive : wp_get_attachment_image() le gère nativement.
  4. Dimensions fixes : width et height en HTML pour éviter le CLS.
  5. Compression agressive : plugin ShortPixel, Imagify ou compression manuelle Squoosh/cwebp.
  6. Lazy loading natif : loading="lazy" — sauf sur l’image LCP (hero) qui doit être eager.
  7. Pas de décorations en image : icônes, illustrations simples → SVG inline ou icon font.

5. Données structurées schema.org (points 32 à 36)

Les rich snippets augmentent le CTR de 20 à 35 % sans gagner une place. Chaque type de contenu a son schéma.

  1. BlogPosting sur les articles : headline, author, datePublished, image, publisher.
  2. Organization sur la home : logo, sameAs (réseaux sociaux), address, contactPoint.
  3. FAQPage sur les pages de FAQ : peut faire apparaître les questions directement dans la SERP.
  4. BreadcrumbList sur toutes les pages internes : breadcrumb visible dans la SERP à la place de l’URL.
  5. Person pour la bio auteur : renforce l’EEAT (expertise, expérience, autorité, confiance).

Le tout en JSON-LD injecté dans le <head>, format recommandé par Google depuis 2016.

inc/schema.php
// Schema Article pour les single posts
add_action( 'wp_head', function (): void {
    if ( ! is_singular( 'post' ) ) return;

    $post = get_queried_object();
    $img  = get_the_post_thumbnail_url( $post, 'hero-large' );

    $data = array(
        '@context'         => 'https://schema.org',
        '@type'            => 'BlogPosting',
        'headline'         => get_the_title( $post ),
        'description'      => get_the_excerpt( $post ),
        'image'            => $img ?: null,
        'datePublished'    => get_the_date( 'c', $post ),
        'dateModified'     => get_the_modified_date( 'c', $post ),
        'author'           => array(
            '@type' => 'Person',
            'name'  => get_the_author_meta( 'display_name', $post->post_author ),
            'url'   => get_author_posts_url( $post->post_author ),
        ),
        'publisher'        => array(
            '@type' => 'Organization',
            'name'  => get_bloginfo( 'name' ),
            'logo'  => array(
                '@type' => 'ImageObject',
                'url'   => get_template_directory_uri() . '/assets/img/logo.png',
            ),
        ),
        'mainEntityOfPage' => get_permalink( $post ),
    );

    echo '<script type="application/ld+json">' . wp_json_encode( $data, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE ) . '</script>';
} );
Tester son schema

Utilisez le Rich Results Test de Google pour valider chaque schéma. Pas de schéma = pas de rich snippet, point.

6. Maillage interne (points 37 à 42)

Le maillage interne est l’arme la plus sous-exploitée du SEO WordPress. Il distribue le link juice, guide Google dans votre architecture et garde les visiteurs sur le site.

  1. 3-5 liens internes par article minimum, pointant vers des contenus pertinents et complémentaires.
  2. Anchor text descriptif : « guide ACF Pro » plutôt que « cliquez ici ».
  3. Pages piliers + clusters thématiques : une page pilier volumineuse, plusieurs articles satellites qui pointent vers elle.
  4. Articles similaires automatiques en bas de chaque article : get_posts() par tags/catégories partagés.
  5. Menu principal < 7 items : concentre le link juice sur les pages stratégiques.
  6. Footer avec liens stratégiques : top pages, catégories principales, mentions légales.

7. Contenu & EEAT (points 43 à 48)

Google évalue désormais l’Experience, Expertise, Authoritativeness, Trust — surtout sur les sujets YMYL (Your Money, Your Life).

  1. Bio auteur complète avec photo, expérience, réseaux sociaux. Page auteur dédiée.
  2. Dates de publication et mise à jour visibles en haut de chaque article.
  3. Sources et références externes (citations, études, liens d’autorité) intégrées dans le contenu.
  4. Contenu original et approfondi : 1500+ mots pour les sujets compétitifs, zéro duplicate content.
  5. Commentaires ouverts et modérés : signal d’engagement + UGC (user-generated content).
  6. Page « À propos » + « Contact » avec identité réelle, photo, coordonnées vérifiables.

8. Technique avancée (points 49 & 50)

  1. hreflang pour le multilingue : chaque version linguistique pointe vers ses équivalentes. Ratez ça et vous perdez 40 % du traffic international.
  2. Monitoring continu : Search Console quotidien, Ahrefs/Semrush pour le suivi positions, Lighthouse CI pour la perf en intégration continue.
HTML — hreflang
<!-- Dans le <head>, pour chaque page multilingue -->
<link rel="alternate" hreflang="fr" href="https://madebysteph.fr/article">
<link rel="alternate" hreflang="en" href="https://madebysteph.com/article">
<link rel="alternate" hreflang="x-default" href="https://madebysteph.fr/article">
Erreur fréquente — l'obsession du score Lighthouse

Un score Lighthouse de 100 ne signifie rien si vos Core Web Vitals field data (Search Console → Signaux web essentiels) restent rouges. Le lab data est un indicateur, pas un objectif. Priorisez toujours le CrUX (données utilisateurs réels).

Comment prioriser

50 points, c’est beaucoup. Voici l’ordre de bataille recommandé pour un site en lancement ou en refonte :

  1. Indexation (section 1) — quick wins, effet immédiat sur la couverture.
  2. Core Web Vitals (section 2) — signal de ranking direct, effet sur tous les KPI.
  3. On-page (section 3) — base non négociable.
  4. Images (section 4) — plus gros impact perf pour le moindre effort.
  5. Schema.org (section 5) — boost CTR sans bouger du classement.
  6. Maillage interne (section 6) — effet long terme, cumulatif.
  7. EEAT & contenu (section 7) — indispensable mais fonction du temps.
  8. Technique avancée (section 8) — spécifique selon contexte.

Un site WordPress qui coche 40 de ces 50 points se place naturellement en top 5 sur ses requêtes cibles. Les 10 derniers points font la différence entre top 5 et top 1.

Le SEO technique n'est pas une destination. C'est une hygiène. On ne la fait pas une fois — on la maintient pour toujours.