Troubleshooting

The nine things that actually go wrong, in the order they are usually hit.

"The theme is missing the style.css stylesheet"

You uploaded the wrong zip. table-and-type-package-<version>.zip is your whole download, not a theme. Unpack it and upload table-and-type.zip. See the installable zip.

A change I made does not show up

Almost always a cache, and usually more than one. Clear them in this order:

  1. The page cache on your host or caching plugin — purge everything, not just one URL.
  2. A CDN in front of it, if you have one. Purge that too.
  3. Your own browser: a hard reload (Shift and the reload button).

Then check whether you edited the right thing: a template you customised in the Site Editor is stored in the database and overrides the theme's own file, so an update to the theme does not reach it. Appearance › Editor › Templates, open the template, and use Reset to take the theme's version.

The stylesheet is stale — the layout is right but the colours are wrong

This is the same cache problem with a specific cause: block themes generate one stylesheet from theme.json and cache it. After a theme update or a change in Styles:

  1. Purge the page cache and the CDN.
  2. Appearance › Editor › Styles, make any change and revert it. That rebuilds the cached stylesheet.
  3. Hard-reload.

If you use a caching plugin with "combine CSS" or "optimise CSS delivery" switched on, turn it off and retest before anything else. Those options frequently drop the theme's own inline styles.

A page 404s, or the wrong template is used

The demo import did not finish, or the photographs are missing

A slip will not save

It is being refused, and the message says why. The five refused shapes and their exact wording are on Slips. In short:

The message mentions The fix
"clipped to … which does not exist" Pick a target from the list in the message.
"is not served at" The dish is not on that service's card. Either add the service to the dish, or clip the slip to a service the dish is actually on.
"not in your hours record" The row key is wrong. The message lists the real ones.
"takes no bookings" That service is not marked bookable, so there is no row to strike.
"ends before it starts" / "has no dates" Swap the two dates, or fill both.
"has no lines" Write at least one line.

On the classic editing screen the slip is kept as a draft rather than thrown away, so nothing you typed is lost — fix the field and publish.

If the notice says "Checks that could not run", part of the plugin is switched off and that check was skipped. The slip saved; it just was not fully checked.

Dark mode flashes light for an instant

The remembered choice is restored by a small script before the page paints. A flash means that script did not run early enough, and there are three usual causes:

  1. A caching or optimisation plugin deferred, delayed or combined the theme's inline script. Exclude the theme's scripts from "delay JavaScript", "defer", "combine" and "remove unused JavaScript". This is by far the most common cause.
  2. A "critical CSS" feature generated its snapshot in light mode and inlines it on every page. Disable it, or regenerate it.
  3. The visitor has no stored choice at all. Then there is no flash — the operating system decides on the first paint, with no script involved. If you are seeing a flash in this case, something is overriding the theme's colours at runtime.

I deactivated the plugin and the pages are nearly empty

That is expected, and the numbers are published: see with the plugin switched off. No fatal, no error — but the records are the content, and without the plugin there are no records to render.

Reactivate it. Nothing was deleted: your dishes, services, hours, slips and booking rows are still in the database, and they come back exactly as they were.

The same is true of switching theme. The content is in the plugin, on purpose.

Enquiries do not arrive

WordPress sends mail through wp_mail(), which on most hosts means PHP's own mail() — and a large share of that is silently dropped by the recipient's spam filter. The form is usually working perfectly and the mail is simply not being delivered.

  1. Check the spam folder of the Group email address.
  2. Install an SMTP plugin and send through a real mail service: your own domain's mailbox, or a transactional provider. This fixes it nearly every time.
  3. Check Settings › Site details › Booking › Group email is filled. If it is empty, mail goes to the site administrator's address.

Something else

Read Support for what is covered and how to reach us. When you write, include: your WordPress version, your PHP version, the theme and plugin versions, whether the problem survives deactivating every other plugin, and what you expected to see.