Available for projects & agency overflow · Quick reply, from the person who does the work

Building a WooCommerce store

WooCommerce is not e-commerce software, it is a plugin adding selling to a publishing system. That sentence explains most of it: editorial freedom, an easy market for help, cost shifting towards extensions, and the limits that appear once the catalogue gains volume.

Describe my issue Send a message

An article page with a shopping cart module being plugged in, surrounded by paid extension blocks.

The data model, and why it matters

Historically a WooCommerce product is a WordPress content item: one row in wp_posts, and everything else — price, stock, weight, SKU — in wp_postmeta, one meta per row. That choice makes the model endlessly extensible: any plugin adds its field with no migration. It also makes some queries expensive, because filtering on three criteria becomes several joins on one table.

Since WooCommerce 8.2 orders have their own tables — high-performance order storage, usually called HPOS — instead of living in wp_posts as well. It is a genuine gain on shops accumulating tens of thousands of orders, and it is the first setting to check on a fresh install, because some older plugins do not support it.

The practical consequence is simple: WooCommerce does not fall over on product volume, it falls over on the number of plugins listening to every page render. A WooCommerce performance problem is almost always a plugin inventory problem.

The budget of a WooCommerce store

  • Plugins, on annual subscription. Advanced shipping, bookings, subscriptions, custom fields, forms: each brick has its publisher, its licence and its own release rhythm.
  • The page builder, if you take one. It makes layout self-service, and it becomes a dependency you cannot leave without rebuilding the pages.
  • Hosting, less demanding than PrestaShop at first, but it must allow an object cache and real scheduled tasks rather than cron fired by visits.
  • The child theme, mandatory the moment you touch a template. Editing the parent theme directly is scheduling the loss of your work at the next update.
  • Maintenance. WordPress updates a lot, often, and two plugins crossing badly break a checkout page without warning.
  • Security. It is the most targeted platform for bots, and one weak administrator account is enough to lose everything.

How I set up a WooCommerce store

  1. Count the plugins before installing one

    I start from the list of expected functions and look for the shortest combination, writing thirty lines rather than installing a two-thousand-file plugin for one extra field. Every plugin removed is one update less and one potential conflict less.

  2. Turn on high-performance order storage

    On a fresh install I enable it from the start and check every checkout plugin declares compatibility. Switching after two years of orders is possible, but it is a migration, with its window and its backup.

  3. Put a child theme in place immediately

    Even when no customisation is planned on day one. The child theme costs ten minutes up front and prevents the “why did my changes disappear” question six months later.

  4. Settle tax and shipping before the catalogue

    Shipping is the leading source of anomalies on this platform: shipping classes, zones, stacked conditions. I validate them on sample baskets before a thousand products make testing unreadable.

  5. Replace the pseudo-cron with a real one

    Firing tasks from visits is fine on a content site, not on a shop where reminders, synchronisations and subscription expiries depend on actual clock time.

Related pages

Frequently asked questions

Is WooCommerce free?
The plugin is; the shop is not. Real cost is made of paid plugins renewed yearly, hosting, the theme and maintenance. A WooCommerce shop with no paid plugin does exist, but it assumes your shipping, your tax and your logistics fit native behaviour — which is true more often than people think, and worth checking before buying.
How many plugins is reasonable?
There is no magic number, but a useful rule: every plugin must have an identified owner and a reason to exist that fits in one sentence. The shops I take over in poor shape rarely have too much code; they have code nobody can explain any more.
Can I start from an existing WordPress brochure site?
Yes, and it is a good starting point: the domain, the content and the earned rankings stay in place. The points to handle are the theme, which was not designed for product templates, performance, because the shop adds uncacheable pages, and tax, which did not exist until then.
Do I need a page builder?
If you want to compose pages without help, yes, and the autonomy is real. Just know that builder content is stored in its own format: changing later means rebuilding pages one by one. It is a commitment, not a setting.
Does WooCommerce cope with a large catalogue?
Yes, provided you add an object cache and watch what plugins do on listing pages. What brings a shop to its knees is almost never the product count; it is a plugin running an unindexed query for every product shown, multiplied by the products per page.

Describe your need in one minute

A few targeted questions so I can reply with an estimate rather than another questionnaire.

besoin
etat
constructeur (facultatif)
extensions (facultatif)
Please provide an email or a phone number so I can get back to you.

Please provide an email or a phone number so I can get back to you.