SteadyDevs Venue Booking

Mô tả

SteadyDevs Venue Booking lets your customers reserve anything you rent by time — sports courts and simulator bays, studios and treatment rooms, restaurant tables, equipment rental, salon chairs, meeting rooms and more. You define the resources, prices and hours; customers book online; you stay in control by approving every reservation.

Nothing is confirmed until you say so, and the same slot can never be sold twice.

What you get

  • Live multi-step booking — a clean 3-step flow (date & time resource & group confirm) with real-time availability, so the same slot can’t be grabbed twice.
  • Admin approval workflow — every booking arrives as Pending. Approve, reject, or cancel from your dashboard.
  • Double-booking protection — approving a resource, date and time that already has an approved booking is blocked automatically.
  • Automatic customer emails — customers are notified the moment you approve or reject their booking, with editable HTML templates and a live preview.
  • Unlimited bookable resources — add as many bays, courts, rooms or tables as your venue has.
  • Theming without code — colour presets, layout controls (summary position, width, corner style), background style and an animation toggle, all with a live preview of the real form.
  • Reports — utilization, revenue and booking counts over any period, on screen.
  • Configurable booking rules — currency, coaching add-on, peak pricing, and a limited or unlimited booking window.
  • Shortcode — drop the form on any page with [steadybook].
  • Built to extend — actions and filters at every point in the booking lifecycle (see the FAQ).

Who it’s for

Driving ranges and indoor golf simulators, sports and racket clubs, wellness studios, salons and barbers, co-working and meeting rooms, equipment hire, and any business that books resources by time slot.

Privacy and external services

SteadyDevs Venue Booking stores bookings in your own WordPress database and sends email through WordPress itself. It makes no external connections: no third-party services, no analytics, no phoning home, no account required. Nothing leaves your server.

SteadyDevs Venue Booking Pro

The free plugin above is complete and unlimited — every feature it has is fully working, nothing is capped, there is no trial and nothing expires. SteadyDevs Venue Booking Pro is a separate plugin, downloaded from our site, that adds features this one does not contain:

For any venue taking bookings

  • Online payments — take a deposit or full payment at the time of booking, so a no-show costs the customer, not you
  • Automatic reminder emails before a booking
  • A front-desk staff role, so a receptionist can manage the day without an administrator account
  • WhatsApp enquiry button
  • Custom brand colours with live preview, beyond the built-in presets
  • CSV export from Reports

For venues running classes and courses

  • Class Portal — recurring classes and programmes sold as prepaid credits, with levels and per-level pricing
  • A member login portal for self-service booking, cancellation and account management
  • Credit packages, orders, and a running credit ledger per member
  • Waitlists with timed seat offers, and a printable class register
  • A public timetable shortcode

Installing Pro keeps everything you already have: it reads the same data, so every booking, resource and setting carries over.

Ảnh màn hình

Cài đặt

  1. Install through Plugins Add New and search for “SteadyDevs Venue Booking”, or upload the ZIP via Plugins Add New Upload Plugin.
  2. Activate the plugin through the Plugins menu in WordPress.
  3. Go to Venue Booking Settings to set your business name, currency and booking window.
  4. Go to Venue Booking Bays to configure your bookable resources and pricing.
  5. (Optional) Go to Venue Booking Appearance to match the form to your brand.
  6. Add the shortcode [steadybook] to any page, then publish.

Hỏi đáp

How do customers book?

They open the page with the [steadybook] shortcode, pick a date and time, choose a resource and group size, and submit their details. The booking is saved as Pending for you to approve.

How do I approve or reject a booking?

Go to Venue Booking All Bookings. Each booking has Approve, Reject and Cancel buttons. Approving or rejecting emails the customer automatically.

Will it prevent double-bookings?

Yes. You cannot approve a booking for a resource, date and time that already has another approved booking.

How many resources can I add?

As many as you like. Nothing in this plugin is capped — resources, bookings, time slots, customers and emails are all unlimited, and there is no trial period.

Do I need an account or a licence key?

No. The plugin is fully functional the moment you activate it. It never contacts an external server, and there is nothing to sign up for.

Do the emails require anything?

Customers must provide an email when booking (the form collects it). For reliable delivery we recommend an SMTP plugin such as WP Mail SMTP — standard for any WordPress site that sends email.

Can I change the colors and layout?

Yes. Venue Booking Appearance offers colour presets, layout options (summary position, width, corner style), background style and an animation toggle, with a live preview of the real booking form. Custom colour pickers are part of SteadyDevs Venue Booking Pro.

Can I rename “Bay” to something else?

Yes. Under Appearance, set the singular and plural terms — Court, Room, Table, Chair, Studio — and they are used throughout the admin and the booking form.

What are the requirements?

WordPress 5.0 or higher and PHP 7.2 or higher.

Can developers extend the plugin?

Yes. SteadyDevs Venue Booking fires WordPress actions and filters at every point in the booking lifecycle, so you can extend it from a child theme or a small companion plugin without editing the plugin itself.

Actions:

  • steadydevs_booking_created ($booking_id, $booking) — after a booking row is created, before any email. Always “pending”.
  • steadydevs_booking_status_changed ($booking_id, $new_status, $old_status, $booking) — after any admin status change.
  • steadydevs_booking_approved / steadydevs_booking_rejected / steadydevs_booking_cancelled ($booking_id, $booking) — convenience aliases.

Filters:

  • steadydevs_booking_total ($total, $context) — adjust the stored price. Note the booking form calculates its own estimate for the summary panel, so changes here are not reflected in the figure the customer saw.
  • steadydevs_time_slots ($slots, $date, $bay_id) — open or close time slots. This is the place to add blackout dates, public holidays or per-weekday opening hours.
  • steadydevs_bays_availability ($bays, $date, $time, $duration) — per-resource availability.
  • steadydevs_email_subject / steadydevs_email_body / steadydevs_email_recipient ($value, $type, $booking) — rewrite an email before it sends.
  • steadydevs_email_should_send ($send, $type, $booking) — return false to cancel a send.

Email $type is one of: admin_new, receipt, approved, rejected.

Example — close Mondays:

add_filter('steadydevs_time_slots', function ($slots, $date) {
    if ((int) date('w', strtotime($date)) === 1) {
        foreach ($slots as $slot) { $slot->available = false; }
    }
    return $slots;
}, 10, 2);

Đánh giá

Không có đánh giá nào cho plugin này.

Người đóng góp & Lập trình viên

“SteadyDevs Venue Booking” là mã nguồn mở. Những người sau đã đóng góp vào plugin này.

Những người đóng góp

Nhật ký thay đổi

Entries describing the Class Portal, member portal, credit packages, levels, waitlists, the staff role and reminder emails refer to the separate SteadyDevs Venue Booking Pro plugin (named SteadyBook Pro in older entries). The free plugin covers the resource booking engine, approvals, emails, theming and reports.

1.11.3

  • Changed: every function, class, constant, option, transient and hook name that used the generic gbb_ / GBB_ prefix now uses steadydevs_ / STEADYDEVS_ instead, per the WordPress.org review guideline on unique naming. If you hook into any of the actions or filters below, update the name. Nothing else about behaviour changes, and no settings are lost — the plugin copies your existing values across automatically the first time it loads after updating.

1.11.2

  • Note: version bump only, to stay in step with the Pro plugin’s release. Nothing changes in this free plugin.

1.11.1

  • Changed: the plugin is renamed SteadyDevs Venue Booking and installs as steadydevs-venue-booking/. The text domain follows the new slug; if you maintain your own translation files, rename them to match. Nothing else changes — same features, same data, same shortcode.

1.11.0

  • Removed the two-resource limit. Add as many bays, courts, rooms or tables as you need. Nothing in this plugin is capped.
  • Changed: features belonging to SteadyBook Pro are no longer part of this plugin in any form. The colour pickers, CSV export and the WhatsApp setting are implemented in the separate Pro plugin rather than being present here and switched off. Everything this plugin contains, it can do.
  • Fixed: the email template screen could offer templates for messages the free plugin has no way to send.
  • Fixed: translations were being loaded on plugins_loaded rather than init, which raises a notice on WordPress 6.7 and later.
  • Changed: the Reports and User Guide screens now use the enqueued stylesheet instead of printing their own styles.
  • Changed: fresh installs seed the full set of sample resources.

1.10.1

  • New: Members can pay for credit packages online. Set a payment method to be settled by a gateway and the member is sent to that provider’s own checkout — no card details ever touch your site — with the credits added the moment the payment clears. HitPay is the first supported gateway, covering PayNow, cards, GrabPay, FPX and DuitNow. Pro.
  • New: A “Test connection” button beside the gateway keys, so a mistyped key is caught while you are still looking at the field rather than by the first member who tries to buy something. Nothing is charged. Pro.
  • New: The Class Portal setup screen now reads your site rather than reciting the same instructions to everyone: how many classes are on the week, whether the credit packs are still the samples, whether your pages carry their shortcodes, whether any payment method works. One step at a time is marked as next. Pro.
  • New: “Create the pages for me” publishes the login and portal pages with their shortcodes and selects them, in one click. An existing page that already has the shortcode is reused, not duplicated. Pro.
  • New: The timetable takes several days at once — tick Mon, Wed and Fri and one save puts the class on all three. Every day is clash-checked before anything is written. Pro.
  • Changed: A page selected as your login or portal page but missing its shortcode is now reported. It used to look configured while sending members somewhere blank. Pro.
  • Note: Nothing changes for payments you settle yourself. A transfer QR, bank details or cash at the desk still cost nothing in fees and still wait for you to confirm them, and both kinds can be offered side by side. A payment that does not add up is never credited automatically — it waits in the Orders queue with a note saying what looked wrong.

1.9.0

  • New: SteadyBook is now two plugins. This free edition covers the booking engine – the 3-step form, approvals, double-booking protection, emails, theming and reports – with unlimited bookable resources. SteadyBook Pro adds online payments, reminder emails, a front-desk staff role, the Class Portal, member logins, credit packages and waitlists.
  • Note: The free edition is not a trial. Nothing expires, nothing phones home, and there is no key to enter. What it does not include is not switched off – it is not in the download at all.
  • Note: For existing Pro sites, nothing changes. Pro stays in the same folder it has always been in, updates through Freemius exactly as before, and keeps every booking, resource and setting. Installing Pro over the free plugin also carries data across untouched – both read the same tables.
  • Changed: The free edition is named SteadyBook Lite and installs as steadybook-lite/ so that WordPress can tell the two apart. Running both at once is harmless: Pro switches the free plugin off when it activates, and says so.
  • Changed: The text domain is now steadybook-lite, matching the WordPress.org slug, so community translations can be installed. If you maintain your own translation files, rename them to match.
  • Changed: Reports export to CSV, and the custom colour pickers, are Pro. The colour presets and the live preview stay free – presets are guesswork without a preview.
  • Changed: On Pro, what a site may use now follows its licence rather than which files are on disk. A lapsed subscription drops back to the free feature set instead of keeping everything indefinitely – and it keeps taking bookings rather than going dark, which is what having a free edition makes possible.
  • Changed: Sample resources and the default booking-form copy are no longer written for one trade.
  • Changed: The Emails screen only shows templates the installed edition can actually send.
  • Security: Booking duration and group size are enforced on the server, not only in the form.
  • Security: Request data is unslashed before sanitising, and query-string values are sanitised at the point of use.
  • New: languages/steadybook-lite.pot, so the plugin can be translated.
  • Developer: Entitlement is resolved through a provider interface, filterable with gbb_license_provider.

1.8.0

  • New: A front-desk role. “Class Portal Staff” gets the Class Portal as its own menu and nothing else – no plugins, themes, users or site settings – so a receptionist confirming payments no longer has to be a WordPress administrator. Setup stays administrators-only, since it decides what members are charged and how they log in.
  • New: A class register. Open Register, pick a class, mark people present or absent. Marking an absence records the no-show and never touches their credit – refunding a missed class stays your decision, under Bookings. A member’s record now shows “18 of 24 marked classes attended”.
  • New: Waitlists, off by default. Members with enough credits can queue for a full class. The moment a seat frees it is offered to whoever waited longest and held for them – nobody else can take it while the hold runs – and they are emailed to claim it from the portal. If they do not, the hold expires and it passes to the next person. Holds never run past the class start, and how long they last is yours to set.
  • New: The waitlist for a class is listed under its register, in order, so the front desk can answer “am I next?” without opening the database.

Earlier releases are listed in changelog.txt, which ships with the plugin. The directory trims very long changelog sections, so only the recent entries are repeated here.