Appointment Booking for CLS Booking

Plugin Banner

Appointment Booking for CLS Booking

by CLS Booking

Download
Description

Appointment Booking for CLS Booking lets you display your services and accept booking requests directly on your WordPress site. All requests are sent to your CLS Booking dashboard (clsbooking.com) where you manage confirmations, scheduling, and customer communication.

WordPress is NOT a booking system — it simply collects requests and forwards them to CLS Booking, your single source of truth.

Features

  • Display your services/room types with a simple shortcode
  • Collect booking requests from visitors (name, email, date, time, attendees)
  • Requests appear instantly in your CLS Booking dashboard as “pending”
  • Rate limiting to prevent form abuse
  • Privacy-compliant with WordPress.org guidelines
  • Works with any WordPress theme
  • Translation-ready (i18n)

How It Works

  1. Sign up for a CLS Booking account at clsbooking.com
  2. Generate an API key in your CLS dashboard
  3. Install this plugin and enter your API key
  4. Add [clsboco_booking_form] to any page
  5. Booking requests appear in your CLS dashboard

Shortcodes

  • [clsboco_booking_form] — Displays the booking request form
  • [clsboco_services] — Displays your available services
  • [clsboco_services layout="list"] — Services in list layout (default: grid)

Requirements

  • A CLS Booking account (free tier available at clsbooking.com)
  • PHP 7.4+ with OpenSSL extension
  • WordPress 6.0+

Privacy

This plugin sends customer-provided information (name, email, phone, booking preferences) to CLS Booking (clsbooking.com) when a booking request is submitted. This data is processed on behalf of the merchant. No booking data is permanently stored on the WordPress site.

For more information, see the CLS Booking privacy policy at clsbooking.com/privacy.

  1. Upload the appointment-booking-for-cls-booking folder to /wp-content/plugins/
  2. Activate the plugin through the ‘Plugins’ menu
  3. Go to Settings > CLS Booking
  4. Enter your API key from your CLS Booking dashboard
  5. Add [clsboco_booking_form] to any page or post
Do I need a CLS Booking account?

Yes. This plugin connects your WordPress site to CLS Booking (clsbooking.com). You need an active account to use it.

Is customer data stored in WordPress?

No. Booking request data is sent directly to CLS Booking and is not permanently stored in WordPress. Only temporary rate-limiting data (IP hashes) is stored briefly.

Can customers pay through the form?

Not in this version. The form collects booking requests only. Payments are handled in your CLS Booking dashboard.

Does it work with WordPress Multisite?

Not in this version. The plugin will show a notice and deactivate on Multisite installations.

Can I customize the form appearance?

Yes. The form uses minimal CSS that inherits from your theme. You can add custom CSS classes via Settings > CLS Booking > Display.

1.1.9

  • Fixed: Undefined variable warnings in includes/class-clsboco-public.php by initializing schedule settings defaults before script localization.

1.1.8

  • Fixed: WordPress.org plugin checks for text domain mismatches by using site-booker-for-cls-booking consistently in translatable strings.
  • Fixed: Template and uninstall variable naming warnings by prefixing file-scope variables with clsboco_.
  • Fixed: Missing translators comments for placeholder strings in public templates.
  • Fixed: Escaped formatted availability summary output in the public services template.

1.1.7

  • Added: Duration dropdown step setting (Display tab) for smaller increments (e.g., 5 or 10 minutes).
  • Improved: Grid selection end time matches the selected duration (even when the duration increment is smaller than the grid interval).
  • Improved: Room category labels now appear in the time grid (when configured).
  • Updated: Getting Started guide in the plugin settings.

1.1.6

  • Fixed: Availability grid now aligns correctly with tenant timezone (business hours + booking blocks).
  • Improved: Past time slots are disabled (cannot book earlier than “now”).
  • Improved: Multi-hour bookings are easier: select duration then tap a start time to auto-fill.
  • Improved: Vertical grid is more compact (narrower columns + shorter rows).

1.1.5

  • Improved: Vertical grid cells are shorter and room columns are narrower (less scrolling, more compact layout).

1.1.4

  • Improved: Vertical grid room columns are narrower for a more compact schedule (less wasted space, better on mobile).

1.1.3

  • Improved: Responsive time-grid sizing for small intervals (less horizontal scrolling).
  • Improved: Time header labels for small intervals (e.g., :10/:15/:20) for easier reading.
  • Fixed: Booking gaps are always unbookable (gap visualization remains optional).
  • Improved: Mobile defaults to vertical grid view for better touch usability.
  • Added: When Visual Time Grid is disabled, requests skip conflict checks (request-only mode).

1.1.2

  • Fixed: Visual schedule grid now always uses the tenant’s current time_interval from the live availability response (prevents stale/cached interval issues).
  • Fixed: Grid alignment issues (room-label width + cell sizing) so the time header and room rows line up correctly.

1.0.6

  • Added: Vertical timeline view — rooms as columns, time flowing top to bottom
  • Added: View toggle button to switch between horizontal and vertical grid orientations
  • Added: Scroll indicators with animated chevrons for horizontal grid navigation
  • Added: Merchant-configurable default grid orientation (Settings > Visual Time Grid)
  • Fixed: Grid time intervals now correctly match merchant’s configured time interval setting
  • Improved: View preference persists within browser session via sessionStorage

1.0.5

  • Added: Horizontal timeline grid (rooms on Y-axis, time on X-axis) matching CLS Booking dashboard
  • Added: Drag-to-book — click and drag to select a time range directly on the grid
  • Added: Live grid updates — availability refreshes immediately after a successful booking
  • Added: Touch support for drag-to-book on mobile/tablet devices
  • Improved: Grid layout uses flexible div-based rendering instead of table for better scroll behavior
  • Improved: Room labels stay visible (sticky left) while scrolling through time slots

1.0.4

  • Added: Full 2D visual booking calendar grid (rooms x time slots) with real-time availability
  • Added: Gap/cleanup period visualization (striped indicator after bookings)
  • Added: Two-step booking UX — select time on grid, then enter details
  • Added: Category mode grid showing aggregate room availability per category
  • Improved: Time slots now respect merchant’s configured time interval (15/30/60 min)
  • Improved: Duration options dynamically generated from merchant schedule settings
  • Improved: Fully-booked time slots marked as disabled in regular form
  • Fixed: Booking gap periods (setup/cleanup time) now correctly block overlapping slots

1.0.3

  • Added: Clear Cache button in Diagnostics tab to refresh settings from CLS dashboard
  • Improved: Test Connection now also clears caches so setting changes (e.g. Visual Time Grid) take effect immediately
  • Fixed: Visual Time Grid not appearing after enabling in CLS dashboard due to stale WordPress transient cache

1.0.2

  • Security: Added index.php files to all directories to prevent directory browsing
  • Build: Removed development files from distribution package
  • Cleanup: Removed .DS_Store system files
  • Improved: readme.txt compliance for WordPress.org Plugin Directory submission

1.0.1

  • Added Getting Started guide tab in admin settings
  • Visual time grid support for interactive time slot selection
  • Improved form field validation and error messages
  • Minor CSS refinements for better theme compatibility

1.0.0

  • Initial release
  • Service display shortcode
  • Booking request form shortcode
  • Admin settings with connection management
  • Rate limiting and privacy compliance
Back to top