Guide WooCommerce SEO
How to optimize a WooCommerce store pour organic search — ce que WooCommerce fait by par défaut, où it falls short, the duplicate-content risk map (categories, tags, attributes, facets), Structure d’URL notamment the 10,5 permalink modifier, product schema, plugins (Yoast vs Rank Math), and Core Web Vitals.
Langues
WooCommerce is a free WordPress plugin, pas a standalone platform — so vous contrôler the whole stack, qui signifie the highest ceiling and the widest surface pour misconfiguration. Out of the box it donne vous valid-but-minimal product schema, workable URLs, and a pile of archive page types (categories, tags, attributes) que quietly generate duplicate and contenu pauvre. The réel fonctionner is configuration: pick un SEO plugin (Yoast SEO + the paid WooCommerce add-on, or Rank Math), éviter duplicate schema blocks, noindex the low-value archives, garder the /product/ /product-category/ /shop/ bases, and treat mise en cache as votre unique biggest Core Web Vitals lever.
TL;DR — WooCommerce is a free plugin que turns a WordPress site into an online store — it’s pas its propre platform comme Shopify. Out of the box it obtient the basics correct but leaves a lot pour vous to configurer. La version courte: install un SEO plugin (Yoast SEO or Rank Math), définir votre permalinks, écrire réel descriptions pour votre products and categories, and arrêter moteur de recherches from indexation the thin “tag” and “attribute” pages WooCommerce creates automatically.
Ce que WooCommerce en réalité is
Ce is the partie la plupart beginner guides skip, and it matters. WooCommerce is a WordPress plugin. Vous install WordPress premier, alors vous ajouter the WooCommerce plugin on top, and that’s ce que donne vous a shop, products, a cart, and checkout. So “WooCommerce SEO” is really “WordPress SEO, for a store.” Everything you’d do to faire a WordPress site rank encore s’applique — WooCommerce simplement adds the store-specific pieces.
That’s différent from Shopify, où vous sign up and everything runs on leur servers. With WooCommerce vous (or votre host) run everything. Plus contrôler, plus responsibility.
Ce que WooCommerce donne vous pour free
Out of the box, WooCommerce va:
- Give chaque product its propre page and URL (e.g.
/product/blue-hoodie/). - Ajouter some basic données structurées to product pages so Google peut lire the price and si it’s in stock.
- Créer category pages (
/product-category/hoodies/), tag pages, and a principal shop page at/shop/.
That’s a workable starting point. But “workable” isn’t “optimized,” and a few of ceux automatic pages peut en réalité fonctionner contre vous.
The premier chose to définir up
Avant anything sinon, go to Settings → Permalinks in WordPress and pick a
“pretty” permalink option (anything autre que the plain ?p=123 style). Si vous
skip ce, votre WooCommerce product and category URLs won’t fonctionner the façon ils
devrait. Ce is a five-minute fix que everyone devrait do on day un.
Install un SEO plugin
Vous vouloir un SEO plugin — pas two fighting chaque autre. The two big ones:
- Yoast SEO (free) — handles votre titles, meta descriptions, and sitemap. There’s aussi a paid “Yoast WooCommerce SEO” add-on que adds richer product données pour Google; that’s a separate product vous buy on top of the free plugin.
- Rank Math (free, with a paid Pro) — fait the même core jobs and inclut WooCommerce fonctionnalités in the free 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 suffisant to rank. Écrire a réel description que réponses ce que someone voudrait demander avant buying.
- Category descriptions. Chaque category page has a description field that’s blank by par défaut. A few bon paragraphs ici aider category pages rank — and ceux are souvent votre highest-traffic pages.
- Image texte alternatif and filenames. Nom votre images something descriptive, pas
IMG_4821.jpg, and fill in the texte alternatif.
Hide lune pages vous don’t vouloir in Google
WooCommerce auto-creates a lot of pages, and some of les are thin and 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 the complet technical version — contenu dupliqué, schema, Structure d’URL, Core Web Vitals, and the Yoast-vs-Rank-Math breakdown? Switch to the Avancé tab.
TL;DR — WooCommerce is a free WordPress plugin, so vous propre the entier stack: highest technical ceiling, widest surface pour misconfiguration. Par défaut output is valid but minimal — basic
ProductJSON-LD, workable URLs, and a définir of archive types (categories, tags, attributes, shop) que generate duplicate and contenu pauvre at scale. The réel fonctionner: pick un SEO plugin and éviter emitting two schema blocks; noindex tag/attribute archives; écrire unique category descriptions; garder the/product/,/product-category/,/shop/bases (removing les is officially discouraged); and treat full-page + object mise en cache as votre biggest Core Web Vitals lever. WooCommerce 10,5 modifié permalink behavior so the deepest category wins — but it auto-301s old URLs.
Commencer from the platform reality
WooCommerce isn’t a platform — it’s the most-installed ecommerce plugin pour WordPress. Que unique fact drives every decision ci-dessous. Vous have direct accès to theme templates, WordPress hooks, URL routing, plugin architecture, and le serveur itself. Comparé to a hosted platform, that’s a far plus élevé ceiling pour technical SEO and a far wider surface pour getting it incorrect.
The par défaut output is meilleur décrit as “valid and workable” — pas optimized. WooCommerce emits données structurées que validates and Structure d’URLs que function. But valid schema and qualifying pour résultats enrichis are différent standards, and a working Structure d’URL peut encore leak contenu dupliqué. The job is closing que gap.
Ce que WooCommerce fait (and doesn’t) do by par défaut
Fait:
- Unique URL per product (par défaut base
/product/slug/). - Native JSON-LD
Productschema on unique product pages:name,image,description,sku, and anoffersobject (price,priceCurrency,availability,url,seller). Two filters contrôler it —woocommerce_structured_data_productandwoocommerce_structured_data_product_offer. - Category archives (
/product-category/), tag archives (/product-tag/), optional attribute archives, and the shop page (/shop/).
Doesn’t, by par défaut:
- Output
brand,aggregateRating,review,gtin/mpn, orhasMerchantReturnPolicyin product schema — ces besoin a plugin. - Connecter schema into a graph (the connected
WebPage → BreadcrumbList → Productstructure Google prefers). - Fill in category descriptions or non-default title tags.
- Définir pretty permalinks — vous doit configurer
Settings → Permalinksyourself or WooCommerce URLs won’t resolve correctement.
Un utile historical remarque from WooCommerce’s propre structured-data wiki: prior to 3.5.6, limited données was parfois output to archives/categories; that’s ne … plus the cas, suivant Google’s compliance requirements.
The duplicate-content risk map
Ce is où WooCommerce stores en réalité lose. The platform spins up overlapping archive pages from several sources at une fois:
| Source | Risk | Fix |
|---|---|---|
| Product in multiple category archives | Medium | Définir a principal category; canonical on the product page resolves the chemin |
| Faceted nav / filter parameters | Élevé | Canonical to the clean URL; noindex multi-filter combos |
| Product tag archives | Medium | Noindex via votre SEO plugin |
| Product attribute archives | Medium–Élevé | Noindex by par défaut; enable selectively pour high-demand terms |
Sort parameters (?orderby=price) | Élevé | Self-referencing canonical or parameter exclusion |
| Pagination au-delà early pages | Low–Medium | Self-referencing canonicals — don’t noindex deep |
| www vs non-www / http vs https | Élevé | 301 at le serveur + canonical |
A few of ces deserve emphasis:
- Attribute archives are the silent killer. Color × size × material à travers a
grand catalog generates hundreds of thin term pages, la plupart with zero search
volume, overlapping with filtered category pages. The Yoast/Rank Math consensus
is to noindex attribute archives by par défaut and enable seulement documented-demand
terms (e.g.
/brand/nike/si “brand” is an attribute and the brand has volume). - Faceted nav scales fast. It’s bien documented que filters on a site of ~700 products peut balloon into ~11 000 indexable URLs une fois parameters obtenir appended. The canonical strategy dépend on the filter: single-attribute high-volume filters peut earn a self-referencing canonical and indexation; low-value multi-attribute combos devrait canonical to the parent category or obtenir noindexed. (Ce is the general ecommerce faceted-navigation problem — WooCommerce simplement rend it facile to generate.)
- Don’t noindex deep pagination reflexively. Long-term
noindexeventually leads Google to arrêter suivant liens on lune page, qui peut cut lien interne equity to products que seulement apparaître on ceux deep pages. Préférer self-referencing canonicals.
Structure d’URL
WooCommerce offers several permalink shapes: par défaut (/product/slug/), shop base
(/shop/slug/), shop base with category (/shop/category/slug/), and a custom
base. Taxonomy bases par défaut to product-category, product-tag, and an vide
attribute base.
My par défaut recommendation: utiliser the plain /product/slug/ structure. It’s
shorter, it doesn’t modifier quand vous reorganize categories, and it sidesteps the
WooCommerce 10,5 behavior ci-dessous.
WooCommerce 10,5 (early 2026) modifié “shop base with category.” It now picks
the term with the la plupart ancestors — the deepest category in the hierarchy — pour
l’URL. A product in les deux “Electronics” and “Electronics > Phones > Smartphones”
now generates /shop/electronics/phones/smartphones/product-name/ au lieu de the
shallower chemin. The bon news: WooCommerce’s built-in canonical redirection
automatically 301s the old URLs to the nouveau canonical — aucun manual redirections. The
caveat: external liens and bookmarks to old URLs may briefly 404 avant the
redirection resolves. Si vous utiliser ce structure, définir a principal category on every
product.
Ne faites pas supprimer l’URL bases. WooCommerce’s docs are explicit que removing
/product/, /product-category/, or /shop/ “is not advisable” and peut lead to
“a number of problems with performance and duplicate URLs.” WordPress relies on
ceux base slugs to identifier page types; strip les and vous force supplémentaire processing
and créer ambiguity entre custom pages and product categories. The marginal
URL-shortening benefit isn’t worth the technical debt.
Schema and données structurées
Google recommends JSON-LD (microdata and RDFa are error-prone) and listes six
ecommerce structured-data types worth implementing: BreadcrumbList,
LocalBusiness, Organization, Product/ProductGroup, Review, and
VideoObject. It aussi distinguishes merchant listings (pages où customers
peut buy — plus fields pour shipping, renvoie, sizing) from product snippets
(pages où ils can’t directement buy — plus examiner fields), and notes que
satisfying merchant-listing requirements généralement rend vous eligible pour product
snippets aussi. Google’s autre recommendation: provide les deux données structurées on the
page and a Merchant Center feed to maximize eligibility.
The native-vs-plugin gap, condensed:
| 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 | Aucun | Yes (via taxonomy) | Yes (Pro) |
aggregateRating / review | Aucun | Yes (si reviews exist) | Yes |
gtin / mpn | Aucun | Yes (input fields) | Yes (Pro) |
hasMerchantReturnPolicy | Aucun | Optional | Aucun |
BreadcrumbList | WC schema | Yoast graph (replaces WC) | Rank Math graph |
The unique la plupart courant mistake: duplicate schema blocks. Si WooCommerce’s
native schema and votre SEO plugin’s schema les deux fire, Google sees two conflicting
Product blocks on the même page. The fix is to disable WooCommerce’s native output
quand votre plugin replaces it. Un practitioner figure puts ce on roughly
40% of WooCommerce audits — que number is industry anecdote, pas an official stat,
so treat it as directional plutôt que precise.
Plugins: Yoast WooCommerce SEO vs Rank Math
Garder the products straight: Yoast SEO is the free plugin; Yoast WooCommerce SEO is a separate paid add-on (autour 178,80 USD/année) que exige Yoast SEO and adds the WooCommerce-specific schema and config. Rank Math, by contrast, ships a WooCommerce module in its free version (with plus in Pro).
Ce que the Yoast add-on fait to product-page schema, per Yoast’s developer docs:
changements the WebPage piece to ItemPage; adds mainEntityOfPage referencing the
WebPage by ID; sets brand/manufacturer from taxonomy; sets seller to the
publishing Organization/Person; stitches offers, review, and/or
aggregateRating into the graph; unsets datePublished/dateModified from the
ItemPage; removes WooCommerce’s propre breadcrumb schema in favor of Yoast’s
graph-connected un; and switches the checkout page’s WebPage to CheckoutPage.
Customization runs via the wpseo_schema_product and wpseo_schema_offer
filters. Un gotcha worth knowing: aggregateRating seulement outputs une fois vous have at
least un examiner.
Rank Math’s WooCommerce module handles contenu dupliqué directement — per its KB it
“automatically adds URL canoniques to la plupart of votre pages, notamment product pages,
categories, tags, attributes, and plus,” sets unique titles/descriptions per
product and taxonomy, and lets vous définir noindex on the archive types que créer
contenu dupliqué (paginated pages, résultats de recherche, tags, categories, attribute
term pages). Product schema (price, availability, ratings, SKU) is automatic;
GTIN/MPN/brand are Pro.
Les deux are bon. Choisir on budget and preference — simplement don’t run les deux, and don’t let soit double up with WooCommerce’s native schema.
Breadcrumbs
WooCommerce ships its propre breadcrumb output (HTML + a standalone schema block).
Yoast WooCommerce SEO’s “Replace WooCommerce Breadcrumbs” setting swaps que pour
Yoast’s breadcrumb, qui is wired into the complet schema graph
(WebPage → BreadcrumbList → Product). Rank Math similarly outputs its propre
BreadcrumbList. Si you’ve enabled breadcrumbs in soit plugin, turn on the
replacement so vous don’t fin up with two breadcrumb sources — the graph-connected
un is plus utile to Google pour understanding hierarchy.
Core Web Vitals
WooCommerce-on-WordPress is the la plupart performances-variable ecommerce stack: a par défaut install on shared hosting with 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 product hero image (aucun WebP, aucun
preload), aucun page mise en cache, slow TTFB. DebugBear’s measurement rend the mise en cache
point vividly: regenerating a complet page rend visitors wait over 1,6 seconds,
versus ~104 ms une fois mis en cache. Fixes: full-page mise en cache, WebP, preload the
above-the-fold product 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), and the dynamic cart widget injecting content. Fixes: explicit image dimensions,font-display: swap, preallocated space / skeletons pour cart widgets. - INP (< 200ms). Big JS bundles from page builders and plugins, excessive add-to-cart/variation AJAX, and unoptimized third-party scripts (chat, reviews, social).
Mise en cache is the unique biggest lever. Object mise en cache alone peut cut database requêtes by ~86%. The WooCommerce-specific catch: full-page cache is bypassed pour logged-in utilisateurs and anyone with items in the cart (session cookies), so the gap entre a Lighthouse tester and a réel shopper peut be grand. WP Rocket and LiteSpeed Cache prise en charge cart-fragment mise en cache to soften que. A sane stack: full-page cache (WP Rocket / LiteSpeed / Nginx FastCGI) + object cache (Redis or Memcached, qui managed hosts comme WP Engine, Kinsta, and SiteGround inclure) + a CDN. Serve WebP (WordPress generates it natively; WooCommerce sert it by par défaut on recent versions), pre-generate thumbnails, and lazy-load below-the-fold grid images.
Sitemaps and indexability
Votre SEO plugin generates the XML sitemap. Yoast WooCommerce SEO adds product gallery images to it and excludes Cart, Checkout, and My Account (ceux are noindexed by WooCommerce déjà). Rank Math’s free module is WooCommerce-aware aussi.
Garder out of le sitemap: Cart/Checkout/My Account, permanently out-of-stock products (considérer noindex + exclusion), filtered/sorted parameter URLs, and quelconque tag or attribute archives you’ve noindexed. Pagination au-delà page 1 is debated — Google crawls paginated pages regardless, so I’d lean toward self-referencing canonicals over noindex.
A few myths to retire
- “Removing
/product/helps SEO.” Aucun — WooCommerce officially calls it “pas advisable” and it causes performances and duplicate-URL problems. - “Native schema is good enough.” It’s valid but minimal — aucun
brand,aggregateRating,gtin/mpn, or the connected graph Google prefers. - “
rel=prev/nextfixes pagination.” Google stopped en utilisant ceux hints back in 2019. Utiliser self-referencing canonicals. - “More attributes = better SEO.” Enabling archives pour every attribute creates hundreds of thin pages. Noindex la plupart of les.
- “WooCommerce and Shopify have the same ceiling.” Différent profiles. WooCommerce offers plus configuration depth at the cost of 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, pas a standalone platform. Vous contrôler the whole stack — highest technical-SEO ceiling, widest surface pour misconfiguration. Par défaut output is valid but minimal.
- Configurer pretty permalinks premier (
Settings → Permalinks) or WooCommerce URLs won’t resolve correctement. - Contenu dupliqué is the core risk: products à travers multiple categories, tag archives, attribute archives, faceted-nav filters, and sort parameters. Noindex tag and attribute archives by par défaut; définir a principal category; canonical filter and sort URLs.
- Garder the
/product/,/product-category/,/shop/URL bases — removing les is officially discouraged. Préférer the plain/product/slug/structure. WooCommerce 10,5 made the deepest category win in “shop base with category” URLs, but auto-301s old URLs. - Schema: native output lacks
brand,aggregateRating,gtin/mpn, and the connected graph. Ajouter les via a plugin — but disable native output so vous don’t emit two conflictingProductblocks (the la plupart courant WooCommerce schema bug). - Plugins: Yoast SEO is free; Yoast WooCommerce SEO is a separate paid add-on. Rank Math inclut WooCommerce fonctionnalités free. Utiliser exactly un.
- Core Web Vitals: full-page + object mise en cache is the biggest lever; object cache alone peut cut DB requêtes ~86%. Remarque que page cache is bypassed pour logged-in / cart sessions.
Documentation officielle
Primary-source documentation from Google and WooCommerce.
Recherche Google Central
- Intro to Product Données structurées — merchant listings vs. product snippets, requis and recommended fields, JSON-LD.
- Données structurées pour Ecommerce Sites — the six recommended ecommerce structured-data types.
WooCommerce
- Permalinks documentation — the disponible product and taxonomy Structure d’URLs.
- Understanding the risks of removing URL bases — pourquoi pas to strip
/product/,/product-category/, or/shop/. - Product Permalink Changements Coming in WooCommerce 10,5 — the deepest-category behavior modifier and automatic canonical 301s.
- Données structurées pour products (GitHub wiki) — ce que WooCommerce outputs natively and the two filters que contrôler it.
- Managing product taxonomies — categories, tags, and attributes.
Plugin developer docs
- Yoast WooCommerce SEO: Schema output — exactly ce que the paid add-on adds to the schema graph.
- Configuration guide pour Yoast WooCommerce SEO — breadcrumb replacement, sitemap exclusions, attribute schema.
- How Rank Math Empêche Contenu dupliqué in WooCommerce — canonicals, per-item titles, and noindex pour archive types.
Quotes from the source
On-the-record statements from Google and WooCommerce. Où possible chaque lien is a deep lien que jumps to the 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
- “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
WooCommerce — URL bases
- “Removing /product/, /product-category/, or /shop/ from the URLs is not advisable.” Jump to quote
- On removing URL bases: it peut lead to “a number of problems with performance and duplicate URLs.” Lire the doc
WooCommerce — permalinks & 10,5
- “Keep permalink structures as short as possible and include keywords that relate to the content they categorize.” Lire the doc
- On the 10,5 modifier, the system now identifies “the term with the most ancestors (deepest in the hierarchy)” pour l’URL, and WooCommerce’s “built-in canonical redirect functionality will automatically 301 redirect old URLs to the new canonical URL.” Lire the post
Rank Math — contenu dupliqué
- Rank Math “automatically adds canonical URLs to most of your pages, including product pages, categories, tags, attributes, and more.” Lire the KB
WooCommerce SEO setup checklist
A practical réussir pour a nouveau or neglected WooCommerce store:
Foundations
- Pretty permalinks définir in
Settings → Permalinks(pas the plain?p=style). - Un SEO plugin installed (Yoast SEO or Rank Math) — pas two.
- Canonical host decided (www vs non-www, https) and 301-enforced at le serveur.
URLs
- En utilisant the plain
/product/slug/permalink (recommended), or a principal category définir on every product si en utilisant “shop base with category.” -
/product/,/product-category/, and/shop/bases left in placer.
Indexability
- Product tag archives définir to
noindex. - Product attribute archives
noindexby par défaut (enable seulement proven-demand terms). - Cart, Checkout, My Account noindexed and excluded from le sitemap.
- Sort/filter parameter URLs canonicalized to the clean URL.
- Deep pagination uses self-referencing canonicals (pas noindex).
Content
- Réel product descriptions (pas simplement the short description).
- Unique category descriptions written — suffisant to dire something a shopper couldn’t obtenir from the product grid itself. Aucun moteur de recherche documents a word count pour ce; length follows le contenu, pas a target.
- Custom title tags / meta descriptions on clé products and categories.
- Descriptive image filenames + texte alternatif.
Schema
- Exactly un source of
Productschema (plugin OR native — pas les deux). -
brand,aggregateRating/review, andgtin/mpnajouté où disponible. - Un breadcrumb source (replace WooCommerce’s si votre plugin outputs its propre).
Performances
- Full-page mise en cache enabled.
- Object cache (Redis/Memcached) enabled.
- WebP images + LCP image preloaded; below-fold grid lazy-loaded.
- Explicit
width/heighton images;font-display: swapon custom fonts.
The mental models
1. WooCommerce = WordPress + a store. Every “WooCommerce SEO” task is a WordPress SEO task plus the store-specific couche (products, categories, schema). Quand vous hit a problem, demander si it’s a generic WordPress problème (permalinks, mise en cache, theme bloat) or a WooCommerce-specific un (archive duplication, product schema). The fix lives in différent places.
2. Valid ≠ optimized. WooCommerce’s defaults validate. Ils don’t rank on leur propre. Treat every par défaut as a floor to construire on — descriptions, titles, schema, and indexability tout commencer vide or minimal.
3. The archive triage. Pour chaque auto-generated archive type, decide: index, canonical, or noindex. Categories → index (with réel descriptions). Tags → usually noindex. Attributes → noindex by par défaut, index seulement proven-demand terms. Filter/sort parameters → canonical to the clean URL. Deep pagination → self-referencing canonical.
4. Un source of truth per signal.
Un SEO plugin. Un source of Product schema. Un breadcrumb source. Un canonical
host. La plupart WooCommerce SEO bugs are two choses doing the même job and conflicting —
two schema blocks, two breadcrumbs, two plugins.
5. Mise en cache is the performances multiplier. Avant micro-optimizing, obtenir full-page and object mise en cache in placer — it moves Core Web Vitals plus que almost anything sinon. Alors remember réel shoppers (logged in / cart) bypass lune page cache, so tester les deux states.
WooCommerce SEO cheat sheet
Page types and Que faire with les
| Page type | URL | Par défaut action |
|---|---|---|
| Unique product | /product/slug/ | Index — unique title, réel description, complet schema |
| Category archive | /product-category/slug/ | Index — écrire a unique description |
| Tag archive | /product-tag/slug/ | Noindex (usually) |
| Attribute archive | /attribute/term/ | Noindex by par défaut; index proven-demand terms |
| Shop page | /shop/ | Index — treat comme the store’s homepage |
| Cart / Checkout / My Account | — | Noindex + exclude from sitemap |
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: free. Yoast WooCommerce SEO: separate paid add-on (~178,80 USD/yr), exige Yoast SEO.
- Rank Math: WooCommerce module in the free version; GTIN/MPN/brand in Pro.
URL rules
- Garder
/product/,/product-category/,/shop/bases. Removing les = official “not advisable.” - WooCommerce 10,5: deepest category wins in “shop base with category”; old URLs auto-301.
rel=prev/nextis dead (since 2019) — utiliser self-referencing canonicals.
Core Web Vitals targets
- LCP < 2,5s · CLS < 0,1 · INP < 200ms.
- Biggest lever: full-page + object mise en cache (object cache ≈ −86% DB requêtes).
- Page cache is bypassed pour logged-in / cart sessions.
Sample WooCommerce product output
Export canonical product/category URLs to urls.txt, alors capture réponse and canonical output:
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 éviter
- Running multiple SEO/schema plugins que claim the même head output.
- Indexation every tag, attribute, filter, and internal-search route by par défaut.
- Reusing manufacturer descriptions à travers the catalog sans unique valeur.
- Redirecting discontinued products to irrelevant categories or the homepage.
- Optimizing plugins in isolation sans testing the combined theme, cache, and extension output.
Courant WooCommerce SEO problèmes
Product pages output duplicate Product schema
Causer: WooCommerce, the theme, and an SEO/schema plugin tout emit markup. Fix: choisir un owner and disable overlapping output.
Filter URLs consume exploration and apparaître in search
Causer: layered navigation creates crawlable parameter liens. Fix: define the indexable facet définir, constrain the rest, and garder lien internes/canonicals consistent.
Out-of-stock or discontinued products disappear incorrectly
Causer: inventory automation changements status, visibility, or redirections sans a search policy. Fix: separate temporary stock states from permanent retirement and preserve utile pages or redirection seulement to relevant replacements.
Outils pour WooCommerce SEO
SEO plugins (pick un)
- Yoast SEO (free) + Yoast WooCommerce SEO (paid add-on) — titles, meta, sitemap, plus the WooCommerce schema graph and breadcrumb replacement.
- Rank Math (free + Pro) — equivalent core fonctionnalités with a WooCommerce module in the free tier; GTIN/MPN/brand in Pro.
- Tout in Un SEO (AIOSEO) — handles grand catalogs (up to ~50 000 products) with dynamic product-schema tags.
Mise en cache & performances
- WP Rocket / LiteSpeed Cache / W3 Total Cache — full-page mise en cache; WP Rocket and LiteSpeed prise en charge cart-fragment mise en cache pour logged-in/cart sessions.
- Redis / Memcached — object mise en cache (bundled on managed hosts comme WP Engine, Kinsta, SiteGround).
- Cloudflare / BunnyCDN — CDN pour static assets and product images.
Testing & validation
- Google Résultats enrichis Tester / Balisage de données structurées Validator — confirmer product schema and catch duplicate blocks.
- DebugBear / PageSpeed Insights — Core Web Vitals, with the mise en cache avant/après gap made visible.
- Recherche Google Console — indexation, the Merchant listings / Product snippets reports, and statistiques d’exploration.
- Ahrefs Site Audit / Screaming Frog — surface duplicate archives, thin pages, chaîne de redirectionss, and parameter explosions.
Validation tests
Tester a plugin or theme SEO modifier
Tester to run — clair caches, publish, and inspect product/category raw output and schema. Attendu result — un canonical, intended directives, and un coherent Product graph. Échec interpretation — mis en cache or overlapping plugin/theme output remains. Monitoring window — immediate après cache purge. Rollback trigger — revert si metadata or product données disappears à travers templates.
Tester a facet/indexation modifier
Tester to run — explorer representative filters and inspect liens, directives, canonicals, and sitemap membership. Attendu result — approved landing pages remain discoverable pendant que unwanted combinations ne faites pas expand explorer inventory. Échec interpretation — navigation or rules encore expose the pattern. Monitoring window — immediate pour output; exploration reports lag. Rollback trigger — restore si valuable category routes become blocked or non-indexable.
How to mesurer WooCommerce SEO
Indexable catalog coverage
Metric — canonical sellable products/categories represented in le sitemap and index reports. Ce que it indique vous — si discovery matches intended inventory. How to pull it — reconcile WooCommerce export, sitemap, explorer, and Search Console. Benchmark / realistic range — investigate unexplained mismatches; exclude intentional removals. Cadence — monthly, weekly during migrations.
Explorer share by URL type
Metric — robot d’exploration requêtes to products/categories versus facets, search, and autre low-value patterns. Ce que it indique vous — si generated URLs consume explorer activity. How to pull it — segment server logs by route/parameter. Benchmark / realistic range — utiliser le site’s baseline and target a plus élevé priority-page share sans errors. Cadence — monthly.
Organic revenue by landing template
Metric — organic revenue and conversion by product/category landing type. Ce que it indique vous — si visibility reaches utile inventory. How to pull it — analytics/ecommerce reporting joined to landing-page type. Benchmark / realistic range — comparer like-for-like periods and account pour seasonality. Cadence — monthly.
Prompts pour WooCommerce SEO fonctionner
Groupe ce explorer export by products, categories, tags, attributes, filters, search, and utility URLs. Identifier duplicate/indexation patterns and recommend template-level fixes. Ne faites pas recommend blocking une URL que doit be crawled to lire
noindex.
Examiner ces discontinued products with replacement, trafic, backlink, stock, and category données. Choisir keep-live, relevant redirection, or 404/410 pour chaque and expliquer the 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é.
From others
- DebugBear — WooCommerce Performances Optimization — the mise en cache avant/après numbers.
- Moteur de recherche Journal — WooCommerce SEO guide.
- Rank Math — WooCommerce SEO guide (vendor, but thorough).
- r/TechSEO — pour explorer/index and duplicate-content debugging.
- Business Bloomer — Noindex WooCommerce Product Tag Pages — practitioner walkthrough of pourquoi tag archives are thin and how to noindex les via Yoast or Rank Math.
- ContentGecko — WooCommerce Contenu dupliqué — detailed breakdown of how filter parameters peut balloon a 700-product store to ~11 000 indexable URLs, plus pagination canonical guidance.
- WP Rocket — Speed Up WooCommerce — mise en cache configuration guide with WooCommerce-specific cart/checkout exclusion requirements.
- Yoast — Ecommerce Product Variations Optimization Guide — quand to créer separate pages pour variants vs. consolidating, plus GTIN/SKU reminder and duplicate-content warnings.
- Recherche Google Central — Product Variants (ProductGroup schema) — official guidance on
ProductGroup,variesBy, andhasVariantpour WooCommerce variable products.