Guide WooCommerce SEO
«How to optimize a WooCommerce store for organic search — what WooCommerce does by default, where it falls short, the duplicate-content risk map (categories, tags, attributes, facets), URL structure including the 10.5 permalink change, product schema, plugins (Yoast vs Rank Math), and Core Web Vitals.» _(Traduction)_ (Résumé en français du champ description : le texte source est conservé pour relecture francophone.)
WooCommerce est a gratuit WordPress plugin, pas a standalone plateforme — donc vous contrôler le entier stack, qui signifie le highest ceiling et le widest surface pour misconfiguration. Out de le box il donne vous valide-mais-minimal produit schema, workable URLs, et a pile de archive page types (categories, balises, attributs) que quietly generate duplicate et contenu pauvre. Le réel fonctionner est configuration: pick un SEO plugin (Yoast SEO + le payant WooCommerce ajouter-on, or Classer Math), éviter duplicate schema bloque, noindex le faible-valeur archives, garder le /produit/ /produit-category/ /shop/ bases, et treat mise en cache as votre unique biggest Core Web Vitals lever.
TL;DR — WooCommerce est a gratuit plugin que turns a WordPress site dans an online store — c’est pas son propre plateforme comme Shopify. Out de le box il obtient le basics correct mais laisse a lot pour vous à configurer. La version courte: install un SEO plugin (Yoast SEO or Classer Math), définir votre permalinks, écrire réel descriptions pour votre produits et categories, et arrêter moteur de recherches depuis indexation le thin “balise” et “attribut” pages WooCommerce crée automatiquement.
Ce que WooCommerce en réalité is
Ce est le partie la plupart beginner guides skip, et il matters. WooCommerce est a WordPress plugin. Vous install WordPress premier, alors vous ajouter le WooCommerce plugin on top, et c’est ce que donne vous a shop, produits, a cart, et checkout. Donc “WooCommerce SEO” est vraiment “WordPress SEO, pour a store.” Tout vous’d faire à faire a WordPress site classer encore s’applique — WooCommerce simplement ajoute le store-spécifique pieces.
c’est différent depuis Shopify, où vous sign up et tout exécute on leur serveurs. Avec WooCommerce vous (or votre host) exécuter tout. Plus contrôler, plus responsibility.
Ce que WooCommerce donne vous pour free
Out of the box, WooCommerce va:
- Donner chaque produit son propre page et URL (e.g.
/product/blue-hoodie/). - Ajouter some basic données structurées à produit pages donc Google peut lire le price et si c’est dans stock.
- Créer category pages (
/product-category/hoodies/), balise pages, et a principal shop page à/shop/.
c’est a workable starting point. Mais “workable” n’est pas “optimized,” et a quelques de ceux automatic pages peut en réalité fonctionner contre vous.
The premier chose to définir up
Avant n’importe quoi sinon, go à Paramètres → Permalinks dans WordPress et pick a
“pretty” permalink option (n’importe quoi autre que le plain ?p=123 style). Si vous
skip ce, votre WooCommerce produit et category URLs ne va pas fonctionner le façon ils
devrait. Ce est a five-minute corriger que everyone devrait faire on day un.
Install un SEO plugin
Vous vouloir un SEO plugin — pas two fighting chaque autre. The two big ones:
- Yoast SEO (gratuit) — handles votre titles, meta descriptions, et sitemap. il y a aussi a payant “Yoast WooCommerce SEO” ajouter-on que ajoute richer produit données pour Google; c’est a séparé produit vous buy on top de le gratuit plugin.
- Classer Math (gratuit, avec a payant Pro) — fait le même core jobs et inclut WooCommerce fonctionnalités dans le gratuit version.
Soit un is fine. Pick un.
Écrire contenu réel
WooCommerce donne vous the fields, but it leaves les vide:
«- Product descriptions. The little “short description” isn’t enough to rank.
Write a real description that answers what someone would ask before buying.
» (Traduction) (Résumé en français de la section vingt, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«- Category descriptions. Each category page has a description field that’s
blank by default. A few good paragraphs here help category pages rank — and
those are often your highest-traffic pages.
» (Traduction) (Résumé en français de la section vingt, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.)
«- Image alt text and filenames. Name your images something descriptive, not
IMG_4821.jpg, and fill in the alt text.
» (Traduction) (Résumé en français de la section vingt, sous-partie trois : le texte source est conservé pour vérification lors de la relecture francophone.)
Hide lune pages vous don’t vouloir in Google
WooCommerce auto-crée a lot de pages, et some de les sont thin et near-duplicate:
- Tag pages (
/product-tag/...) — usually safe tonoindex(votre SEO plugin has a toggle pour ce). - Attribute pages (color, size) — même; noindex unless un specifically obtient searched pour.
- Cart, Checkout, My Account — ces obtenir hidden from search automatically quand vous utiliser an SEO plugin. Bon.
Vouloir le complet technique version — contenu dupliqué, schema, Structure d’URL, Core Web Vitals, et le Yoast-vs-Classer-Math breakdown? Switch à le Avancé tab.
«> TL;DR — WooCommerce is a free WordPress plugin, so you own the entire stack:
highest technical ceiling, widest surface for misconfiguration. Default output is valid but minimal — basic
ProductJSON-LD, workable URLs, and a set of archive types (categories, tags, attributes, shop) that generate duplicate and thin content at scale. The real work: pick one SEO plugin and avoid emitting two schema blocks; noindex tag/attribute archives; write unique category descriptions; keep the/product/,/product-category/,/shop/bases (removing them is officially discouraged); and treat full-page + object caching as your biggest Core Web Vitals lever. WooCommerce 10.5 changed permalink behavior so the deepest category wins — but it auto-301s old URLs. » (Traduction) (Résumé en français de la section vingt-huit, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«## Start from the platform reality » (Traduction) (Résumé en français de la section vingt-neuf, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«WooCommerce isn’t a platform — it’s the most-installed ecommerce plugin for WordPress. That single fact drives every decision below. You have direct access to theme templates, WordPress hooks, URL routing, plugin architecture, and the server itself. Compared to a hosted platform, that’s a far higher ceiling for technical SEO and a far wider surface for getting it wrong. » (Traduction) (Résumé en français de la section trente, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«The default output is best described as “valid and workable” — not optimized. WooCommerce emits structured data that validates and URL structures that function. But valid schema and qualifying for rich results are different standards, and a working URL structure can still leak duplicate content. The job is closing that gap. » (Traduction) (Résumé en français de la section trente et un, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
Ce que WooCommerce fait (and doesn’t) do by par défaut
Fait:
- Unique URL per produit (par défaut base
/product/slug/). - Native JSON-LD
Productschema on unique produit pages:name,image,description,sku, et anoffersobject (price,priceCurrency,availability,url,seller). Deux filters contrôler il —woocommerce_structured_data_productetwoocommerce_structured_data_product_offer. - Category archives (
/product-category/), balise archives (/product-tag/), optional attribut archives, et le shop page (/shop/).
Doesn’t, by par défaut:
«- Output brand, aggregateRating, review, gtin/mpn, or
hasMerchantReturnPolicy in product schema — these need a plugin.
» (Traduction) (Résumé en français de la section trente-six, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«- Connect schema into a graph (the connected WebPage → BreadcrumbList → Product
structure Google prefers).
» (Traduction) (Résumé en français de la section trente-six, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.)
«- Fill in category descriptions or non-default title tags.
» (Traduction) (Résumé en français de la section trente-six, sous-partie trois : le texte source est conservé pour vérification lors de la relecture francophone.)
«- Set pretty permalinks — you must configure Settings → Permalinks yourself or
WooCommerce URLs won’t resolve correctly.
» (Traduction) (Résumé en français de la section trente-six, sous-partie quatre : le texte source est conservé pour vérification lors de la relecture francophone.)
«One useful historical note from WooCommerce’s own structured-data wiki: prior to 3.5.6, limited data was sometimes output to archives/categories; that’s no longer the case, following Google’s compliance requirements. » (Traduction) (Résumé en français de la section trente-sept, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«## The duplicate-content risk map » (Traduction) (Résumé en français de la section trente-huit, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«This is where WooCommerce stores actually lose. The platform spins up overlapping archive pages from several sources at once: » (Traduction) (Résumé en français de la section trente-neuf, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«| Source | Risk | Fix |
| --- | --- | --- |
| Product in multiple category archives | Medium | Set a primary category; canonical on the product page resolves the path |
| Faceted nav / filter parameters | High | Canonical to the clean URL; noindex multi-filter combos |
| Product tag archives | Medium | Noindex via your SEO plugin |
| Product attribute archives | Medium–High | Noindex by default; enable selectively for high-demand terms |
| Sort parameters (?orderby=price) | High | Self-referencing canonical or parameter exclusion |
| Pagination beyond early pages | Low–Medium | Self-referencing canonicals — don’t noindex deep |
| www vs non-www / http vs https | High | 301 at the server + canonical |
» (Traduction) (Résumé en français de la section quarante, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
A few of ces deserve emphasis:
«- Attribute archives are the silent killer. Color × size × material across a
large catalog generates hundreds of thin term pages, most with zero search
volume, overlapping with filtered category pages. The Yoast/Rank Math consensus
is to noindex attribute archives by default and enable only documented-demand
terms (e.g. /brand/nike/ if “brand” is an attribute and the brand has volume).
» (Traduction) (Résumé en français de la section quarante-deux, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«- Faceted nav scales fast. It’s well documented that filters on a site of ~700
products can balloon into ~11,000 indexable URLs once parameters get appended.
The canonical strategy depends on the filter: single-attribute high-volume filters
can earn a self-referencing canonical and indexing; low-value multi-attribute
combos should canonical to the parent category or get noindexed. (This is the
general ecommerce faceted-navigation problem — WooCommerce just makes it easy to
generate.)
» (Traduction) (Résumé en français de la section quarante-deux, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.)
«- Don’t noindex deep pagination reflexively. Long-term noindex eventually
leads Google to stop following links on the page, which can cut internal link
equity to products that only appear on those deep pages. Prefer self-referencing
canonicals.
» (Traduction) (Résumé en français de la section quarante-deux, sous-partie trois : le texte source est conservé pour vérification lors de la relecture francophone.)
Structure d’URL
WooCommerce offers plusieurs permalink shapes: par défaut (/product/slug/), shop base
(/shop/slug/), shop base avec category (/shop/category/slug/), et a custom
base. Taxonomy bases par défaut à product-category, product-tag, et an vide
attribut base.
Mon par défaut recommendation: utiliser le plain /product/slug/ structure. c’est
shorter, il ne fait pas modifier quand vous reorganize categories, et il sidesteps le
WooCommerce 10,5 behavior ci-dessous.
WooCommerce 10,5 (early 2026) modifié “shop base with category.” Il maintenant picks
le term avec le la plupart ancestors — le deepest category dans le hierarchy — pour
l’URL. A produit dans les deux “Electronics” et “Electronics > Phones > Smartphones”
maintenant generates /shop/electronics/phones/smartphones/product-name/ au lieu de le
shallower chemin. Le bon news: WooCommerce’s built-dans canonical redirection
automatiquement 301s le old URLs à le nouveau canonical — aucun manual redirections. Le
caveat: external liens et bookmarks à old URLs peut briefly 404 avant le
redirection resolves. Si vous utiliser ce structure, définir a principal category on chaque
produit.
Ne faites pas supprimer l’URL bases. WooCommerce’s docs sont explicit que removing
/product/, /product-category/, or /shop/ “is not advisable” et peut lead à
“a number de problèmes avec performance et duplicate URLs.” WordPress relies on
ceux base slugs à identifier page types; strip les et vous force supplémentaire processing
et créer ambiguity entre custom pages et produit categories. Le marginal
URL-shortening avantage n’est pas worth le technique debt.
«## Schema and structured data » (Traduction) (Résumé en français de la section quarante-huit, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«Google recommends JSON-LD (microdata and RDFa are error-prone) and lists six
ecommerce structured-data types worth implementing: BreadcrumbList,
LocalBusiness, Organization, Product/ProductGroup, Review, and
VideoObject. It also distinguishes merchant listings (pages where customers
can buy — more fields for shipping, returns, sizing) from product snippets
(pages where they can’t directly buy — more review fields), and notes that
satisfying merchant-listing requirements generally makes you eligible for product
snippets too. Google’s other recommendation: provide both structured data on the
page and a Merchant Center feed to maximize eligibility.
» (Traduction) (Résumé en français de la section quarante-neuf, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«The native-vs-plugin gap, condensed: » (Traduction) (Résumé en français de la section cinquante, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«| Property | WooCommerce native | Yoast WooCommerce SEO | Rank Math (Pro) |
| --- | --- | --- | --- |
| Product, name, description, image, sku | Yes | Yes (+ ItemPage, gallery) | Yes |
| offers (price/currency/availability) | Yes | Yes (enhanced) | Yes |
| brand / manufacturer | No | Yes (via taxonomy) | Yes (Pro) |
| aggregateRating / review | No | Yes (if reviews exist) | Yes |
| gtin / mpn | No | Yes (input fields) | Yes (Pro) |
| hasMerchantReturnPolicy | No | Optional | No |
| BreadcrumbList | WC schema | Yoast graph (replaces WC) | Rank Math graph |
» (Traduction) (Résumé en français de la section cinquante et un, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
Le unique la plupart courant mistake: duplicate schema bloque. Si WooCommerce’s
native schema et votre SEO plugin’s schema les deux fire, Google voit deux conflicting
Product bloque on le même page. Le corriger est à disable WooCommerce’s native sortie
quand votre plugin remplace il. Un practitioner figure puts ce on roughly
40% de WooCommerce audits — que number est industry anecdote, pas an official stat,
donc treat il as directional plutôt que precise.
Plugins: Yoast WooCommerce SEO vs Classer Math
Garder le produits straight: Yoast SEO est le gratuit plugin; Yoast WooCommerce SEO est a séparé payant ajouter-on (autour 178,80 USD/année) que exige Yoast SEO et ajoute le WooCommerce-spécifique schema et config. Classer Math, par contrast, ships a WooCommerce module dans son gratuit version (avec plus dans Pro).
Ce que le Yoast ajouter-on fait à produit-page schema, per Yoast’s developer docs:
changements le WebPage piece à ItemPage; ajoute mainEntityOfPage referencing le
WebPage par ID; sets brand/manufacturer depuis taxonomy; sets seller à le
publishing Organization/Person; stitches offers, review, et/or
aggregateRating dans le graph; unsets datePublished/dateModified depuis le
ItemPage; supprime WooCommerce’s propre breadcrumb schema dans favor de Yoast’s
graph-connected un; et switches le checkout page’s WebPage à CheckoutPage.
Customization exécute via le wpseo_schema_product et wpseo_schema_offer
filters. Un gotcha worth knowing: aggregateRating seulement outputs une fois vous ont à
le moins un examiner.
Classer Math’s WooCommerce module handles contenu dupliqué directement — per son KB il
“automatiquement ajoute URL canoniques à la plupart de votre pages, notamment produit pages,
categories, balises, attributs, et plus,” sets unique titles/descriptions per
produit et taxonomy, et lets vous définir noindex on le archive types que créer
contenu dupliqué (paginated pages, résultats de recherche, balises, categories, attribut
term pages). Produit schema (price, availability, ratings, SKU) est automatic;
GTIN/MPN/brand sont Pro.
Les deux sont bon. Choisir on budget et preference — simplement ne pas exécuter les deux, et ne pas let soit double up avec WooCommerce’s native schema.
Breadcrumbs
WooCommerce ships son propre breadcrumb sortie (HTML + a standalone schema bloquer).
Yoast WooCommerce SEO’s “Replace WooCommerce Breadcrumbs” paramètre swaps que pour
Yoast’s breadcrumb, qui est wired dans le complet schema graph
(WebPage → BreadcrumbList → Product). Classer Math similarly outputs son propre
BreadcrumbList. Si vous avez enabled breadcrumbs dans soit plugin, turn on le
replacement donc vous ne pas fin up avec deux breadcrumb sources — le graph-connected
un est plus utile à Google pour understanding hierarchy.
Core Web Vitals
WooCommerce-on-WordPress est le la plupart performances-variable ecommerce stack: a par défaut install on shared hosting avec a heavy theme peut échouer tout three thresholds; a tuned install on managed hosting peut beat la plupart hosted platforms.
- LCP (< 2,5s). Usual culprits: an unoptimized produit hero image (aucun WebP, aucun
preload), aucun page mise en cache, lent TTFB. DebugBear’s measurement rend le mise en cache
point vividly: regenerating a complet page rend visitors wait over 1,6 seconds,
versus ~104 ms une fois mis en cache. Corrections: complet-page mise en cache, WebP, preload le
ci-dessus-le-fold produit image (
wp_preload_resourcesfilter, WP 6,3+), CDN pour static assets. - CLS (< 0,1). Gallery images sans explicit
width/height, late-loading fonts (aucunfont-display: swap), et le dynamic cart widget injecting contenu. Corrections: explicit image dimensions,font-display: swap, preallocated space / skeletons pour cart widgets. - INP (< 200ms). Big JS bundles depuis page builders et plugins, excessive ajouter-à-cart/variation AJAX, et unoptimized tiers scripts (chat, reviews, social).
«Caching is the single biggest lever. Object caching alone can cut database queries by ~86%. The WooCommerce-specific catch: full-page cache is bypassed for logged-in users and anyone with items in the cart (session cookies), so the gap between a Lighthouse test and a real shopper can be large. WP Rocket and LiteSpeed Cache support cart-fragment caching to soften that. A sane stack: full-page cache (WP Rocket / LiteSpeed / Nginx FastCGI) + object cache (Redis or Memcached, which managed hosts like WP Engine, Kinsta, and SiteGround include) + a CDN. Serve WebP (WordPress generates it natively; WooCommerce serves it by default on recent versions), pre-generate thumbnails, and lazy-load below-the-fold grid images. » (Traduction) (Résumé en français de la section soixante-quatre, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
Sitemaps and indexability
Votre SEO plugin generates le XML sitemap. Yoast WooCommerce SEO ajoute produit gallery images à il et excludes Cart, Checkout, et Mon Account (ceux sont noindexed par WooCommerce déjà). Classer Math’s gratuit module est WooCommerce-aware aussi.
Garder out de le sitemap: Cart/Checkout/Mon Account, permanently out-de-stock produits (considérer noindex + exclusion), filtered/sorted parameter URLs, et quelconque balise or attribut archives vous avez noindexed. Pagination au-delà page 1 est debated — Google explore paginated pages regardless, donc je voudrais lean toward self-referencing canonicals over noindex.
A quelques myths à retire
- “Removing
/product/aide SEO.” Aucun — WooCommerce officially calls il “pas advisable” et il causes performances et duplicate-URL problèmes. - “Native schema is good enough.” c’est valide mais minimal — aucun
brand,aggregateRating,gtin/mpn, or le connected graph Google prefers. - “
rel=prev/nextcorrections pagination.” Google stopped en utilisant ceux hints back dans 2019. Utiliser self-referencing canonicals. - “Plus attributs = meilleur SEO.” Enabling archives pour chaque attribut crée hundreds de thin pages. Noindex la plupart de les.
- “WooCommerce et Shopify ont le même ceiling.” Différent profiles. WooCommerce offers plus configuration depth à le coût de needing plus expertise; la plupart comparisons quietly benchmark par défaut Shopify contre optimized WooCommerce.
AI summary
A condensed prendre on the Avancé version:
«- WooCommerce is a free WordPress plugin, not a standalone platform. You control
the whole stack — highest technical-SEO ceiling, widest surface for
misconfiguration. Default output is valid but minimal.
» (Traduction) (Résumé en français de la section soixante-quatorze, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«- Configure pretty permalinks first (Settings → Permalinks) or WooCommerce
URLs won’t resolve correctly.
» (Traduction) (Résumé en français de la section soixante-quatorze, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.)
«- Duplicate content is the core risk: products across multiple categories, tag
archives, attribute archives, faceted-nav filters, and sort parameters. Noindex
tag and attribute archives by default; set a primary category; canonical filter
and sort URLs.
» (Traduction) (Résumé en français de la section soixante-quatorze, sous-partie trois : le texte source est conservé pour vérification lors de la relecture francophone.)
«- Keep the /product/, /product-category/, /shop/ URL bases — removing
them is officially discouraged. Prefer the plain /product/slug/ structure.
WooCommerce 10.5 made the deepest category win in “shop base with category”
URLs, but auto-301s old URLs.
» (Traduction) (Résumé en français de la section soixante-quatorze, sous-partie quatre : le texte source est conservé pour vérification lors de la relecture francophone.)
«- Schema: native output lacks brand, aggregateRating, gtin/mpn, and the
connected graph. Add them via a plugin — but disable native output so you don’t
emit two conflicting Product blocks (the most common WooCommerce schema bug).
» (Traduction) (Résumé en français de la section soixante-quatorze, sous-partie cinq : le texte source est conservé pour vérification lors de la relecture francophone.)
«- Plugins: Yoast SEO is free; Yoast WooCommerce SEO is a separate paid add-on.
Rank Math includes WooCommerce features free. Use exactly one.
» (Traduction) (Résumé en français de la section soixante-quatorze, sous-partie six : le texte source est conservé pour vérification lors de la relecture francophone.)
«- Core Web Vitals: full-page + object caching is the biggest lever; object cache
alone can cut DB queries ~86%. Note that page cache is bypassed for logged-in /
cart sessions.
» (Traduction) (Résumé en français de la section soixante-quatorze, sous-partie sept : le texte source est conservé pour vérification lors de la relecture francophone.)
«## Official documentation » (Traduction) (Résumé en français de la section soixante-dix-sept, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«Primary-source documentation from Google and WooCommerce. » (Traduction) (Résumé en français de la section soixante-dix-huit, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«Google Search Central » (Traduction) (Résumé en français de la section soixante-dix-neuf, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.) «- Intro to Product Structured Data — merchant listings vs. product snippets, required and recommended fields, JSON-LD. » (Traduction) (Résumé en français de la section soixante-dix-neuf, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.) «- Structured Data for Ecommerce Sites — the six recommended ecommerce structured-data types. » (Traduction) (Résumé en français de la section soixante-dix-neuf, sous-partie trois : le texte source est conservé pour vérification lors de la relecture francophone.)
«WooCommerce
» (Traduction) (Résumé en français de la section quatre-vingts, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«- Permalinks documentation — the available product and taxonomy URL structures.
» (Traduction) (Résumé en français de la section quatre-vingts, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.)
«- Understanding the risks of removing URL bases — why not to strip /product/, /product-category/, or /shop/.
» (Traduction) (Résumé en français de la section quatre-vingts, sous-partie trois : le texte source est conservé pour vérification lors de la relecture francophone.)
«- Product Permalink Changes Coming in WooCommerce 10.5 — the deepest-category behavior change and automatic canonical 301s.
» (Traduction) (Résumé en français de la section quatre-vingts, sous-partie quatre : le texte source est conservé pour vérification lors de la relecture francophone.)
«- Structured data for products (GitHub wiki) — what WooCommerce outputs natively and the two filters that control it.
» (Traduction) (Résumé en français de la section quatre-vingts, sous-partie cinq : le texte source est conservé pour vérification lors de la relecture francophone.)
«- Managing product taxonomies — categories, tags, and attributes.
» (Traduction) (Résumé en français de la section quatre-vingts, sous-partie six : le texte source est conservé pour vérification lors de la relecture francophone.)
«Plugin developer docs » (Traduction) (Résumé en français de la section quatre-vingt-un, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.) «- Yoast WooCommerce SEO: Schema output — exactly what the paid add-on adds to the schema graph. » (Traduction) (Résumé en français de la section quatre-vingt-un, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.) «- Configuration guide for Yoast WooCommerce SEO — breadcrumb replacement, sitemap exclusions, attribute schema. » (Traduction) (Résumé en français de la section quatre-vingt-un, sous-partie trois : le texte source est conservé pour vérification lors de la relecture francophone.) «- How Rank Math Prevents Duplicate Content in WooCommerce — canonicals, per-item titles, and noindex for archive types. » (Traduction) (Résumé en français de la section quatre-vingt-un, sous-partie quatre : le texte source est conservé pour vérification lors de la relecture francophone.)
«## Quotes from the source » (Traduction) (Résumé en français de la section quatre-vingt-quatre, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
On-le-record statements depuis Google et WooCommerce. Où possible chaque lien est a deep lien que jumps à le quoted passage.
Google — product données structurées
«- “Merchant listings: For pages where customers can purchase products from you. This markup has more options for specifying detailed product information, like apparel sizing, shipping details, and return policy information.” Jump to quote » (Traduction) (Résumé en français de la section quatre-vingt-sept, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.) «- “Providing both structured data on web pages and a Merchant Center feed maximizes your eligibility to experiences and helps Google correctly understand and verify your data.” Jump to quote » (Traduction) (Résumé en français de la section quatre-vingt-sept, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.)
WooCommerce — URL bases
- “Removing /produit/, /produit-category/, or /shop/ depuis le URLs est pas advisable.” Jump à citation
- On removing URL bases: il peut lead à “a number de problèmes avec performance et duplicate URLs.” Lire le doc
WooCommerce — permalinks & 10,5
«- “Keep permalink structures as short as possible and include keywords that relate to the content they categorize.” Read the doc » (Traduction) (Résumé en français de la section quatre-vingt-onze, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.) «- On the 10.5 change, the system now identifies “the term with the most ancestors (deepest in the hierarchy)” for the URL, and WooCommerce’s “built-in canonical redirect functionality will automatically 301 redirect old URLs to the new canonical URL.” Read the post » (Traduction) (Résumé en français de la section quatre-vingt-onze, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.)
Rank Math — contenu dupliqué
- Classer Math “automatiquement ajoute canonical URLs à la plupart de votre pages, including produit pages, categories, balises, attributs, et plus.” Lire le KB
WooCommerce SEO setup checklist
A practical réussir pour a nouveau or neglected WooCommerce store:
«Foundations
» (Traduction) (Résumé en français de la section quatre-vingt-dix-neuf, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«- [ ] Pretty permalinks set in Settings → Permalinks (not the plain ?p= style).
» (Traduction) (Résumé en français de la section quatre-vingt-dix-neuf, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.)
«- [ ] One SEO plugin installed (Yoast SEO or Rank Math) — not two.
» (Traduction) (Résumé en français de la section quatre-vingt-dix-neuf, sous-partie trois : le texte source est conservé pour vérification lors de la relecture francophone.)
«- [ ] Canonical host decided (www vs non-www, https) and 301-enforced at the server.
» (Traduction) (Résumé en français de la section quatre-vingt-dix-neuf, sous-partie quatre : le texte source est conservé pour vérification lors de la relecture francophone.)
«URLs
» (Traduction) (Résumé en français de la section cent, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«- [ ] Using the plain /product/slug/ permalink (recommended), or a primary
category set on every product if using “shop base with category.”
» (Traduction) (Résumé en français de la section cent, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.)
«- [ ] /product/, /product-category/, and /shop/ bases left in place.
» (Traduction) (Résumé en français de la section cent, sous-partie trois : le texte source est conservé pour vérification lors de la relecture francophone.)
«Indexability
» (Traduction) (Résumé en français de la section cent un, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«- [ ] Product tag archives set to noindex.
» (Traduction) (Résumé en français de la section cent un, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.)
«- [ ] Product attribute archives noindex by default (enable only proven-demand terms).
» (Traduction) (Résumé en français de la section cent un, sous-partie trois : le texte source est conservé pour vérification lors de la relecture francophone.)
«- [ ] Cart, Checkout, My Account noindexed and excluded from the sitemap.
» (Traduction) (Résumé en français de la section cent un, sous-partie quatre : le texte source est conservé pour vérification lors de la relecture francophone.)
«- [ ] Sort/filter parameter URLs canonicalized to the clean URL.
» (Traduction) (Résumé en français de la section cent un, sous-partie cinq : le texte source est conservé pour vérification lors de la relecture francophone.)
«- [ ] Deep pagination uses self-referencing canonicals (not noindex).
» (Traduction) (Résumé en français de la section cent un, sous-partie six : le texte source est conservé pour vérification lors de la relecture francophone.)
«Content » (Traduction) (Résumé en français de la section cent deux, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.) «- [ ] Real product descriptions (not just the short description). » (Traduction) (Résumé en français de la section cent deux, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.) «- [ ] Unique category descriptions written — enough to say something a shopper couldn’t get from the product grid itself. No search engine documents a word count for this; length follows the content, not a target. » (Traduction) (Résumé en français de la section cent deux, sous-partie trois : le texte source est conservé pour vérification lors de la relecture francophone.) «- [ ] Custom title tags / meta descriptions on key products and categories. » (Traduction) (Résumé en français de la section cent deux, sous-partie quatre : le texte source est conservé pour vérification lors de la relecture francophone.) «- [ ] Descriptive image filenames + alt text. » (Traduction) (Résumé en français de la section cent deux, sous-partie cinq : le texte source est conservé pour vérification lors de la relecture francophone.)
«Schema
» (Traduction) (Résumé en français de la section cent trois, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«- [ ] Exactly one source of Product schema (plugin OR native — not both).
» (Traduction) (Résumé en français de la section cent trois, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.)
«- [ ] brand, aggregateRating/review, and gtin/mpn added where available.
» (Traduction) (Résumé en français de la section cent trois, sous-partie trois : le texte source est conservé pour vérification lors de la relecture francophone.)
«- [ ] One breadcrumb source (replace WooCommerce’s if your plugin outputs its own).
» (Traduction) (Résumé en français de la section cent trois, sous-partie quatre : le texte source est conservé pour vérification lors de la relecture francophone.)
«Performance
» (Traduction) (Résumé en français de la section cent quatre, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«- [ ] Full-page caching enabled.
» (Traduction) (Résumé en français de la section cent quatre, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.)
«- [ ] Object cache (Redis/Memcached) enabled.
» (Traduction) (Résumé en français de la section cent quatre, sous-partie trois : le texte source est conservé pour vérification lors de la relecture francophone.)
«- [ ] WebP images + LCP image preloaded; below-fold grid lazy-loaded.
» (Traduction) (Résumé en français de la section cent quatre, sous-partie quatre : le texte source est conservé pour vérification lors de la relecture francophone.)
«- [ ] Explicit width/height on images; font-display: swap on custom fonts.
» (Traduction) (Résumé en français de la section cent quatre, sous-partie cinq : le texte source est conservé pour vérification lors de la relecture francophone.)
«## The mental models » (Traduction) (Résumé en français de la section cent sept, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
1. WooCommerce = WordPress + a store. Chaque “WooCommerce SEO” task est a WordPress SEO task plus le store-spécifique couche (produits, categories, schema). Quand vous hit a problème, demander si c’est a générique WordPress problème (permalinks, mise en cache, theme bloat) or a WooCommerce-spécifique un (archive duplication, produit schema). Le corriger lives dans différent places.
2. Valide ≠ optimized. WooCommerce’s defaults valider. Ils ne pas classer on leur propre. Treat chaque par défaut as a floor à construire on — descriptions, titles, schema, et indexability tout commencer vide or minimal.
«3. The archive triage. For each auto-generated archive type, decide: index, canonical, or noindex. Categories → index (with real descriptions). Tags → usually noindex. Attributes → noindex by default, index only proven-demand terms. Filter/sort parameters → canonical to the clean URL. Deep pagination → self-referencing canonical. » (Traduction) (Résumé en français de la section cent dix, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
4. Un source de truth per signal.
Un SEO plugin. Un source de Product schema. Un breadcrumb source. Un canonical
host. La plupart WooCommerce SEO bugs sont deux choses doing le même job et conflicting —
deux schema bloque, deux breadcrumbs, deux plugins.
5. Mise en cache est le performances multiplier. Avant micro-optimizing, obtenir complet-page et object mise en cache dans placer — il moves Core Web Vitals plus que presque n’importe quoi sinon. Alors remember réel shoppers (logged dans / cart) bypass lune page cache, donc tester les deux states.
«## WooCommerce SEO cheat sheet » (Traduction) (Résumé en français de la section cent quinze, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«Page types and what to do with them » (Traduction) (Résumé en français de la section cent seize, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«| Page type | URL | Default action |
| --- | --- | --- |
| Single product | /product/slug/ | Index — unique title, real description, full schema |
| Category archive | /product-category/slug/ | Index — write a unique description |
| Tag archive | /product-tag/slug/ | Noindex (usually) |
| Attribute archive | /attribute/term/ | Noindex by default; index proven-demand terms |
| Shop page | /shop/ | Index — treat like the store’s homepage |
| Cart / Checkout / My Account | — | Noindex + exclude from sitemap |
» (Traduction) (Résumé en français de la section cent dix-sept, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
Schema: native vs plugin (rapide)
- Native:
name,image,description,sku,offers. Nothing sinon. - Ajouter via plugin:
brand,aggregateRating,review,gtin/mpn,hasMerchantReturnPolicy, connected graph (ItemPage). - Jamais run native + plugin schema ensemble → duplicate
Productblocks.
Plugin facts
- Yoast SEO: gratuit. Yoast WooCommerce SEO: séparé payant ajouter-on (~178,80 USD/yr), exige Yoast SEO.
- Classer Math: WooCommerce module dans le gratuit version; GTIN/MPN/brand dans Pro.
«URL rules
» (Traduction) (Résumé en français de la section cent vingt, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«- Keep /product/, /product-category/, /shop/ bases. Removing them = official
“not advisable.”
» (Traduction) (Résumé en français de la section cent vingt, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.)
«- WooCommerce 10.5: deepest category wins in “shop base with category”; old URLs
auto-301.
» (Traduction) (Résumé en français de la section cent vingt, sous-partie trois : le texte source est conservé pour vérification lors de la relecture francophone.)
«- rel=prev/next is dead (since 2019) — use self-referencing canonicals.
» (Traduction) (Résumé en français de la section cent vingt, sous-partie quatre : le texte source est conservé pour vérification lors de la relecture francophone.)
«Core Web Vitals targets » (Traduction) (Résumé en français de la section cent vingt et un, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.) «- LCP < 2.5s · CLS < 0.1 · INP < 200ms. » (Traduction) (Résumé en français de la section cent vingt et un, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.) «- Biggest lever: full-page + object caching (object cache ≈ −86% DB queries). » (Traduction) (Résumé en français de la section cent vingt et un, sous-partie trois : le texte source est conservé pour vérification lors de la relecture francophone.) «- Page cache is bypassed for logged-in / cart sessions. » (Traduction) (Résumé en français de la section cent vingt et un, sous-partie quatre : le texte source est conservé pour vérification lors de la relecture francophone.)
«## Sample WooCommerce product output » (Traduction) (Résumé en français de la section cent vingt-quatre, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«Export canonical product/category URLs to urls.txt, then capture response and canonical output:
» (Traduction) (Résumé en français de la section cent vingt-cinq, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
while IFS= read -r url; do
html=$(mktemp); status=$(curl -sSL -o "$html" -w '%{http_code}' "$url")
canonical=$(grep -Eio '<link[^>]+rel=["'"']canonical["'"'][^>]*>' "$html" | head -1)
product=$(grep -Eio '"@type"[[:space:]]*:[[:space:]]*"Product"' "$html" | wc -l | tr -d ' ')
printf '%s\t%s\tproduct-schema=%s\t%s\n' "$status" "$url" "$product" "$canonical"
rm -f "$html"
done < urls.txt «## WooCommerce SEO mistakes to avoid » (Traduction) (Résumé en français de la section cent vingt-neuf, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«- Running multiple SEO/schema plugins that claim the same head output. » (Traduction) (Résumé en français de la section cent trente, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.) «- Indexing every tag, attribute, filter, and internal-search route by default. » (Traduction) (Résumé en français de la section cent trente, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.) «- Reusing manufacturer descriptions across the catalog without unique value. » (Traduction) (Résumé en français de la section cent trente, sous-partie trois : le texte source est conservé pour vérification lors de la relecture francophone.) «- Redirecting discontinued products to irrelevant categories or the homepage. » (Traduction) (Résumé en français de la section cent trente, sous-partie quatre : le texte source est conservé pour vérification lors de la relecture francophone.) «- Optimizing plugins in isolation without testing the combined theme, cache, and extension output. » (Traduction) (Résumé en français de la section cent trente, sous-partie cinq : le texte source est conservé pour vérification lors de la relecture francophone.)
Courant WooCommerce SEO problèmes
Produit pages sortie duplicate Produit schema
Causer: WooCommerce, le theme, et an SEO/schema plugin tout emit markup. Corriger: choisir un owner et disable overlapping sortie.
Filter URLs consume exploration et apparaître dans recherche
Causer: layered navigation crée crawlable parameter liens. Corriger: define le indexable facet définir, constrain le rest, et garder lien internes/canonicals consistent.
Out-de-stock or discontinued produits disappear incorrectly
Causer: inventory automation changements status, visibility, or redirections sans a recherche policy. Corriger: séparé temporary stock states depuis permanent retirement et preserve utile pages or redirection seulement à pertinent replacements.
Outils pour WooCommerce SEO
SEO plugins (pick un)
- Yoast SEO (gratuit) + Yoast WooCommerce SEO (payant ajouter-on) — titles, meta, sitemap, plus le WooCommerce schema graph et breadcrumb replacement.
- Classer Math (gratuit + Pro) — equivalent core fonctionnalités avec a WooCommerce module dans le gratuit tier; GTIN/MPN/brand dans Pro.
- Tout dans Un SEO (AIOSEO) — handles grand catalogs (up à ~50 000 produits) avec dynamic produit-schema balises.
Mise en cache & performances
- WP Rocket / LiteSpeed Cache / W3 Total Cache — complet-page mise en cache; WP Rocket et LiteSpeed prise en charge cart-fragment mise en cache pour logged-dans/cart sessions.
- Redis / Memcached — object mise en cache (bundled on managed hosts comme WP Moteur, Kinsta, SiteGround).
- Cloudflare / BunnyCDN — CDN pour static assets et produit images.
Testing & validation
- Google Résultats enrichis Tester / Balisage de données structurées Validator — confirmer produit schema et catch duplicate bloque.
- DebugBear / PageSpeed Insights — Core Web Vitals, avec le mise en cache avant/après gap fait visible.
- Recherche Google Console — indexation, le Merchant listings / Produit extraits rapports, et statistiques d’exploration.
- Ahrefs Site Audit / Screaming Frog — surface duplicate archives, thin pages, chaîne de redirectionss, et parameter explosions.
Validation tests
Tester a plugin or theme SEO modifier
Tester à exécuter — clair caches, publish, et inspect produit/category raw sortie et schema. Attendu résultat — un canonical, prévu directives, et un coherent Produit graph. Échec interpretation — mis en cache or overlapping plugin/theme sortie remains. Monitoring window — immediate après cache purge. Rollback trigger — revert si metadata or produit données disappears à travers templates.
Tester a facet/indexation modifier
Tester à exécuter — explorer representative filters et inspect liens, directives, canonicals, et sitemap membership. Attendu résultat — approved landing pages remain discoverable pendant que unwanted combinations ne faites pas expand explorer inventory. Échec interpretation — navigation or règles encore expose le modèle. Monitoring window — immediate pour sortie; exploration rapports lag. Rollback trigger — restore si valuable category routes become bloqué or non-indexable.
How to mesurer WooCommerce SEO
Indexable catalog coverage
Metric — canonical sellable produits/categories represented dans le sitemap et indexer rapports. Ce que il indique vous — si discovery matches prévu inventory. Comment pull il — reconcile WooCommerce export, sitemap, explorer, et Search Console. Benchmark / realistic range — investigate unexplained mismatches; exclude intentional removals. Cadence — monthly, weekly during migrations.
Explorer share par URL type
Metric — robot d’exploration requêtes à produits/categories versus facets, recherche, et autre faible-valeur patterns. Ce que il indique vous — si generated URLs consume explorer activity. Comment pull il — segment serveur logs par route/parameter. Benchmark / realistic range — utiliser le site’s baseline et cible a plus élevé priority-page share sans erreurs. Cadence — monthly.
Organique revenue par landing template
Metric — organique revenue et conversion par produit/category landing type. Ce que il indique vous — si visibility reaches utile inventory. Comment pull il — analytics/ecommerce reporting joined à landing-page type. Benchmark / realistic range — comparer like-pour-like periods et account pour seasonality. Cadence — monthly.
Prompts pour WooCommerce SEO fonctionner
Groupe ce explorer export par produits, categories, balises, attributs, filters, recherche, et utility URLs. Identifier duplicate/indexation patterns et recommend template-level corrections. Ne faites pas recommend blocking une URL que doit être exploré à lire
noindex.
Examiner ces discontinued produits avec replacement, trafic, backlink, stock, et category données. Choisir garder-actif, pertinent redirection, or 404/410 pour chaque et expliquer le evidence. Ne faites pas invent a replacement URL.
Testez vos connaissances: WooCommerce SEO
Ressources utiles
Official / principal
- WooCommerce Permalinks documentation.
- WooCommerce — risks of removing URL bases.
- Product Permalink Changements in WooCommerce 10,5.
- WooCommerce — Données structurées pour products (wiki).
- Google — Intro to Product Données structurées.
- Google — Données structurées pour Ecommerce Sites.
Plugin docs
- Yoast WooCommerce SEO: Schema output.
- Configuration guide pour Yoast WooCommerce SEO.
- Rank Math — WooCommerce contenu dupliqué.
Depuis others
- DebugBear — WooCommerce Performances Optimization — le mise en cache avant/après numbers.
- Moteur de recherche Journal — WooCommerce SEO guide.
- Classer Math — WooCommerce SEO guide (vendor, mais thorough).
- r/TechSEO — pour explorer/indexer et duplicate-contenu debugging.
- Entreprise Bloomer — Noindex WooCommerce Produit Balise Pages — practitioner walkthrough de pourquoi balise archives sont thin et comment noindex les via Yoast or Classer Math.
- ContentGecko — WooCommerce Contenu dupliqué — detailed breakdown de comment filter parameters peut balloon a 700-produit store à ~11 000 indexable URLs, plus pagination canonical guidance.
- WP Rocket — Speed Up WooCommerce — mise en cache configuration guide avec WooCommerce-spécifique cart/checkout exclusion requirements.
- Yoast — Ecommerce Produit Variations Optimization Guide — quand à créer séparé pages pour variants vs. consolidating, plus GTIN/SKU reminder et duplicate-contenu warnings.
- Recherche Google Central — Produit Variants (ProductGroup schema) — official guidance on
ProductGroup,variesBy, ethasVariantpour WooCommerce variable produits.