Skip to content
eCommerceRetail

Building a WooCommerce Store

Product architecture, checkout flow, and the performance constraints that make WooCommerce different from a brochure site.

This is an implementation example, not a client case study. It describes how this work is actually carried out — the method, the sequence and the reasoning. No client is named and no result is claimed, because inventing either would make it worthless as evidence.

WooCommerce store structure from catalogue through to checkout

A WooCommerce store is a different kind of project from a brochure site, and treating it as 'WordPress with products' is where most of the trouble starts. Cart and checkout cannot be cached, product data has structure that matters to search, and the checkout is a conversion funnel where every additional field costs orders.

Project type
WooCommerce store build
Sector
Retail

The challenge

Product catalogues have real structure — variations, attributes, categories — and getting that wrong makes filtering, search and structured data all worse at once. Meanwhile the pages that matter most commercially are the ones that cannot be cached, so performance work has to target a moving target.

The objective

A store where the catalogue structure supports how customers actually browse, the checkout asks for the minimum, and product pages give search engines properly structured data.

Approach

Model the catalogue on customer behaviour rather than on internal categories. Then treat the checkout as a conversion problem and the category pages as an SEO problem, because that is what they respectively are.

Implementation

Product architecture

The first decisions, and the expensive ones to change:

  • Variable versus simple products. Size and colour are variations of one product, not separate products. Getting this wrong fragments reviews, stock and search signals across near-duplicates.
  • Attributes versus categories. Categories are how people browse; attributes are how they filter. Material is an attribute. "Kitchen" is a category.
  • Category depth. Shallow. Deep hierarchies produce near-empty category pages that compete with each other.

Category pages are the SEO surface

Most organic eCommerce traffic lands on category pages, not product pages. They need:

  • a real H1 and some genuine introductory content
  • a sensible default sort order
  • pagination that does not create indexable near-duplicates
  • filters that do not generate crawlable URL variants for every combination

That last point matters more than it sounds. Uncontrolled faceted navigation can generate thousands of URLs from a hundred products, and burn crawl budget on all of them.

Product pages

  • Product schema with price and availability, generated from the actual product data
  • Real descriptions, not manufacturer copy duplicated across every retailer selling the same item
  • Images sized properly, with the main image not lazy-loaded

Checkout

Treated as a conversion funnel:

  • Guest checkout available. Forcing account creation costs orders.
  • Only fields you genuinely need. Every extra one loses people.
  • Shipping cost visible early — unexpected cost at the final step is the single most common abandonment reason
  • Inline validation, with errors that say what to do
  • Tested on a real phone, at every step, with a real payment

Performance, which is a different problem here

Cart, checkout and account pages cannot be page-cached — they are per-user by definition. So:

  • Hosting has to handle uncached PHP and database load, which cheap shared hosting generally does not
  • Object caching matters more than it does on a brochure site
  • Product images are usually the largest payload on the site and need real discipline

Technology

  • WordPress
  • WooCommerce
  • PHP (OOP)
  • Payment gateway integration
  • JSON-LD

Decisions worth explaining

Variations rather than separate products for size and colour

Separate products fragment stock, reviews and search signals across pages that are effectively the same item competing with each other.

Faceted filters that do not generate indexable URLs by default

Uncontrolled facets turn a hundred products into thousands of crawlable near-duplicate URLs and spend crawl budget on all of them.

Guest checkout enabled

Forced account creation is a well-established abandonment cause, and the account it creates is rarely used again.

What it produces

A store with a catalogue structure that matches how customers browse, category pages built to be the organic entry point they actually are, and a checkout that asks for the minimum. Conversion and revenue figures are not claimed — those depend on products, pricing and traffic, none of which a build controls.

What it teaches

  • Category pages carry more organic weight than product pages on most stores, and get a fraction of the attention.
  • Faceted navigation is the most common source of crawl waste in eCommerce.
  • WooCommerce on cheap shared hosting is a false economy, because the pages that matter cannot be cached.
  • Every additional checkout field has a cost, and it is measurable.

Related services

Related guides

Worked examples