WordPress

Setting Up WooCommerce on KapsuleHost

Kapsule has a dedicated WooCommerce site type that installs WordPress, WooCommerce and a set of New Zealand payment gateways for you, then adds store specific tools to the site menu. This guide covers creating the store, connecting payments, the settings that matter for a store under load, and how to make changes without losing orders.

Creating a WooCommerce Site

  1. Sign in to KPanel and click Websites in the left sidebar.
  2. Click Add Website, then New Website.
  3. Choose WooCommerce as the site type.
  4. Give the store a name and finish the wizard.

Kapsule provisions WordPress, creates the database, installs and activates WooCommerce, and pre-installs the payment gateway plugins listed below. PHP 8.3 is set as the runtime, with the extensions a store needs including image handling.

If you already have a WordPress site and want to add a store to it, install WooCommerce the ordinary way from Plugins, then Add New in wp-admin. The site keeps its WordPress site type, which means the store specific tabs described here will not appear.

Migrating an existing store rather than starting fresh? Do not rebuild it by hand. Use Migrations in the left sidebar, which copies files and database while your current store stays live throughout. See Migrating a Website From cPanel.

Payment Gateways

Open the store, then the WordPress tab, then Payments. This is a WooCommerce only tab and does not appear on ordinary WordPress sites.

Payment gateways panel for a WooCommerce store

Five gateways are covered, with the New Zealand relevant ones marked:

GatewayCoversStatus on a new store
StripeCards, Apple Pay and Google PayPre-installed, inactive
AfterpayBuy now, pay laterPre-installed, inactive
POLiNew Zealand bank transferPre-installed, inactive
PayPalPayPal and cardsPre-installed, inactive
WindcaveNew Zealand card processing and EFTPOSAvailable, install from the vendor

Apple Pay and Google Pay come with Stripe: there is nothing separate to install for either.

Gateways are deliberately installed inactive. An enabled gateway with no credentials breaks checkout, so nothing goes live until you supply your own merchant account details:

  1. Click Enable on the gateway you use.
  2. Click Configure, which opens that gateway's settings inside wp-admin.
  3. Enter your own API keys or merchant credentials and save.
  4. Place a test order before you announce the store.

Windcave is distributed by the vendor rather than the plugin directory, so the panel gives you a Get plugin link. Download it, upload it from Plugins, then Add New in wp-admin, then come back and configure it here.

The Payments tab is part of Managed WooCommerce. On other plans it shows an upgrade panel instead. You can still install and configure any gateway directly in wp-admin on any plan: the tab is a shortcut, not the only route.

Store Performance

A store does far more database work per page view than a brochure site, so caching is where the biggest wins are.

Full page cache. On the site's WordPress tab, then Caching, the full page cache serves finished HTML to anonymous visitors without running PHP or touching the database at all. The cart, checkout, my-account pages and the WooCommerce AJAX endpoints are bypassed automatically, and any visitor with an active cart cookie is always served a live page. The cache speeds up product and category pages without ever showing one customer another customer's cart.

Object cache. On the same screen, the object cache keeps database query results and transients in memory. This is the one that makes the WooCommerce admin usable on a large catalogue.

CDN. Turn it on from Performance, then Kapsule CDN to serve product images and static assets from the edge, with image optimisation and WebP conversion. See Enabling the CDN. Purge it after a bulk product image change: Purging the CDN Cache.

Full page and object caching are included with Managed WooCommerce. If your store is on another plan, the Caching tab shows what the upgrade adds. Either way, enable the CDN first: it is included on every hosting plan and it is the cheapest performance improvement available on an image heavy store.

PHP Settings for a Store

Stores are the most common reason to move off the defaults. On the site's Advanced, then PHP tab:

  • Memory limit: raise from 256M to 512M if the catalogue is large or you run subscriptions.
  • Max execution time: raise from 30 to 120 or 300 seconds if product imports or report generation time out.
  • Max input variables: raise from 3000 if you have products with many variations, or a settings screen that silently drops fields when you save.

Full detail is in Increasing the WordPress Memory Limit.

Scheduled Tasks

WooCommerce runs a great deal in the background: order status transitions, subscription renewals, emails, stock sync. It uses WordPress's built in scheduler, which by default only fires when someone visits the site. On a quiet store that means renewals and emails run late or not at all.

Replace it with a real server side schedule. The WordPress tab, then the WP-Cron section has an Enable system cron action that adds the schedule and disables the visitor triggered version in the same step. Full explanation and the manual alternative are in Setting Up and Managing Cron Jobs.

You can watch the queue at WooCommerce, then Status, then Scheduled Actions in wp-admin.

Making Changes Without Losing Orders

Every store is a live database that customers are writing to continuously, which changes how you should handle updates.

Never push a staging database to a live store. Orders, customers, subscriptions, coupons and stock levels all live in the database, so a database push deletes every order placed since your last reset from production. Push files only, which is enough for theme, plugin and code changes. See Using Staging: Pushing and Pulling.

A safe update routine for a store:

  1. Take a backup: Taking a Backup.
  2. Reset staging from production so it matches the live store.
  3. Apply the plugin, theme or WooCommerce updates on staging.
  4. Place a full test order on staging, all the way to the confirmation page.
  5. Push files only to production.
  6. Place a small real order on production and refund it.

On managed plans the Update Plugins action on Quick Actions becomes Smart Update: it backs up, updates one plugin at a time, runs a site health check after each, and automatically rolls back anything that breaks the site. On a store where a broken checkout costs money, that is worth having.

Point-in-Time Recovery

Daily backups restore a store to the state it was in when that backup ran, which on a busy store can mean losing a day of orders. WooCommerce sites can enable point-in-time recovery from Backups, then Point-in-time recovery, and restore to a chosen minute instead, with up to 30 days of retention. On any store taking real money, turn it on. See Taking a Backup.

Troubleshooting

Checkout fails with no error. Almost always an enabled gateway with missing or wrong credentials. Disable gateways one at a time from the Payments tab until checkout works, then reconfigure the one that broke it.

Order emails are not arriving. WordPress sends mail through PHP by default and most networks reject it. Check the delivery warning on the WordPress tab, then Site Health, and configure proper authenticated sending.

Admin pages are slow or time out. Raise memory and execution time on the PHP tab, then enable the object cache. A store with tens of thousands of orders also benefits from clearing old scheduled actions.

Product changes do not show on the front end. Flush the cache from WordPress, then Quick Actions, then Flush Cache, and purge the CDN.

Still need help?

Email us at support@kapsulehost.com or open a chat in KPanel.

Open KPanel