How do I force customers to use the seating chart and buy tickets with seats?

Pre-sales FAQ · 4 min read · Updated May 21, 2026

When you use the Seating Charts add-on, every ticket sold must be tied to a specific seat — that’s the whole point of seat assignment. But Tickera also lets WooCommerce sell the same ticket types as regular products. If a buyer reaches the ticket through your WooCommerce shop page (or a direct product link) and checks out the normal way, they’ll get a ticket without a seat assigned, which defeats the seating chart entirely. Two short settings changes and one shortcode placement close that loophole.

The short answer

Force all seat-based events through the seating chart shortcode by:

  1. Hiding tickets from the WooCommerce shop so buyers can’t add them straight to cart.
  2. Redirecting any direct product URL back to the event page so the only path to checkout is via the seat picker.
  3. Disabling the automatic ticket listing on the event page and replacing it with the [seating_chart] shortcode (the “Pick your seats” button).

That way, the only way to buy is to click a seat on the chart — which guarantees every ticket has a seat number attached.

Step-by-step setup

1. Hide tickets from the WooCommerce store

In your WordPress dashboard go to Tickera → Settings → General and scroll to the WooCommerce section. Set Hide Tickets to Yes. From that moment, ticket products no longer appear on the Shop page, category archives, search results or related-product widgets. They effectively become invisible inside the WooCommerce storefront, even though they still exist as products.

2. Redirect direct product URLs to the event

Right below that, set Redirect product single post to an event to Yes. Anyone who lands on a single-product URL (from a stale Google result, a shared link, a bookmark) is automatically forwarded to the event page. They never see the bare “Add to cart” button that would skip seat selection.

3. Disable auto-ticket display on the event page

Edit the event itself and un-check Show Tickets Automatically. Without this, the event page would show a plain ticket list that customers could buy through without choosing a seat — same problem as the shop page, different door.

4. Drop in the seating chart shortcode

In the event page content, place the seating-chart shortcode (typically [seating_chart event_id="123"], where 123 is the event’s ID — the add-on documentation gives the exact syntax). This renders the “Pick your seats” button. Clicking it opens the chart, the buyer picks one or more seats, the cart is populated with seat-bound tickets, and checkout proceeds normally — only now there’s no way to end up with a seatless ticket.

You can also place the same shortcode on any other page or post (a landing page, a sponsorship microsite, an email-blast destination). As long as customers arrive via the seating chart, seats are enforced.

What this does and doesn’t prevent

This setup forces seat selection for the events you’ve configured this way. It does not:

  • Prevent admins from manually creating orders without seats from the WordPress dashboard (that’s intentional — staff sometimes need to issue comp tickets).
  • Force seat assignment for general-admission ticket types you mix into the same event (those don’t have seats by design).
  • Affect events that don’t use a seating chart at all — they continue to behave as standard Tickera events.

Recommended pattern: one event, one path

For seated events, design the event page so the seating chart is the only thing buyers see and click. Hide the ticket table, hide the price grid, put a clear heading (“Pick your seat”), drop the shortcode below it, done. That single-path UX is much easier to support than a hybrid page with a chart and a ticket list — when something goes wrong, you know exactly which button the buyer used.

Related questions

Was this article helpful?

Yes — great. No or partially? Tell us what was missing — we read every message and use it to improve these docs.