BookingWP - #1 WordPress Appointment Booking Plugin icon

Release v5.4.7

BookingWP - #1 WordPress Appointment Booking Plugin v5.4.7

What's new in v5.4.7

BookingWP - #1 WordPress Appointment Booking Plugin v5.4.7 was released on . #1 WordPress Appointment Booking Plugin See the full changelog below and compare with the complete version history.

Release details

Released
3.0 MB
File unavailable

Changelog

Improved
  • Admin panel: create/edit fields use outlined floating labels (Checkout-style); status uses compact filter chips; attendance is hidden on create, editable on edit, and muted text on view; Pick from a calendar stays a compact trigger until opened.
  • Admin calendar: sticky toolbar and day headers under admin chrome with one page scrollbar; the toolbar docks under the admin bar while you scroll.
  • Admin panel: primary form controls use 14px body text; series list shows date and time ranges on separate lines.
  • Admin panel create: browse no longer auto-opens when a slot is unavailable; Add New without calendar prefill leaves date/time empty (date-only calendar picks still auto-select the first time).
  • Admin panel: product select uses preloaded products (instant); clear (x) removed on create/edit; duplicate titles append SKU or #id; duration sits on the When row; line Total shows only when it differs from order total.
  • Admin calendar: compact one-row toolbar; Add New is a leading filled button (label on wide screens, icon-only on narrow); filter button shows an active-count badge only (selections stay in the filter panel).
  • Admin calendar: hovered and selected events use a white ring plus lift; selected events rise above overlaps.
Other
  • Performance - Admin: calendar/panel product list loads with a light id/title/color query instead of hydrating up to 200 full product objects on every admin load.
  • Performance - Admin panel browse: day availability evaluates each rule once; all-day RRULEs reuse the in-request path instead of rebuilding minutes every civil day.
  • Dev - Tests: AdminCalendarAvailabilityStripeTimezoneLiveTest (PHP) and admin-calendar-availability-rule-timezone Vitest lock civil vs timed stripe timezone policy for staff UTC, Australia/Perth, and America/Los_Angeles.
  • Dev - Tests: SeriesCartCheckoutLiveTest covers series creation on on-hold, processing, completed, and partial-payment (pending is not hooked).
  • Dev - Tests: RuleMinutesRruleCivilDayTest, RruleCivilDayAvailabilityLiveTest, RuleMinutesOvernightApplyEvaluateTest, and OvernightTimeAvailabilityLiveTest cover overnight/all-day RRULE civil-day parity and time:N overnight vs end-at-midnight.
  • Dev - Tests: `SlotsTimezoneLiveTest` and `AdminPanelTimezoneLiveTest` cover store/staff timezone boundaries for slots and panel availability (Fake UTC chip fields).
  • Dev - Tests: IcsExporterStaleEntryRegressionLiveTest covers offset-based store timezones (`gmt_offset` / `+01:00`) so VTIMEZONE generation does not fatal when `getTransitions()` returns false.
  • Dev - Build: `npm run build` runs `test:js` (calendar timezone Vitest) alongside gcal and PHP suites.
Fixed
  • Admin calendar (staff): appointments you create for products without assigned staff stay on the calendar immediately (creator matches the locked staff filter, same as after reload).
  • Admin panel create: real midnight slots (00:00), including admin-TZ midnight, keep a timed calendar preview and availability checkmark (slot timestamp distinguishes them from date-only placeholders).
  • Admin panel: narrow view fills the viewport; series uses panel scroll; customer timezone and cost lines stack; series rows are date | status | open.
  • Admin calendar: switching the appointment panel from view to edit no longer flickers the calendar event (preview ghost only appears after the draft schedule changes).
  • Admin calendar: full-day unavailable stripes stay on the civil day (not shifted by admin timezone); stripe tips on hover/tap instead of a modal; tapping a stripe no longer opens create; empty cells open create again.
  • Admin calendar: sticky WooCommerce header chrome scoped to the calendar page only; staff Screen Options/Help no longer inflate Firefox scroll; empty preload ranges still seed so first paint skips REST; availability rules load again when indexed cache is enabled.
  • Admin calendar SSE: after a recurring series materializes, the view panel gets the full occurrence list and package pricing; one series create snackbar with customer and pattern.
  • Admin calendar SSE: new appointments stay after month navigation (cache insert); payloads build only when queued and flush once per request; burst creates/bookings collapse to one snackbar count.
  • Admin calendar/panel (staff): product preload respects Create Appointments for Any Product; create auto-selects the logged-in staff when assigned; toolbar Add New uses the same path as slot-pick (no full reload).
  • Admin panel create: required date/time errors show under those fields and clear when valid; hourly auto-select no longer rolls the form date forward when staff timezone differs from the site.
  • Admin panel: Staff field shows or hides from product preload (same as add-ons); create availability responds faster; day-duration

Compatibility

Requires WordPress
6.8
Tested up to
7.1
Requires PHP
7.4

Verified safe

BookingWP - #1 WordPress Appointment Booking Plugin v5.4.7 scanned clean with no security threats detected.

View full scan report