Intelligent Room Booking System for Hotel
Advanced Booking System is a comprehensive WordPress plugin that allows you to manage bookings for rooms, courts, chalets, sports fields, or any bookable resource. Perfect for hotels, sports facilities, co-working spaces, and rental businesses.
Key Features
For Site Visitors: * Interactive calendar interface for date selection * User registration and login required for bookings * Real-time availability checking * Email confirmation when booking is approved * Email notification when booking is denied * View and manage personal bookings * Cancel bookings before the scheduled date
For Administrators: * Comprehensive admin panel for booking management * Approve or deny booking requests with one click * Automated email notifications for new bookings * Customizable email templates with template tags * Unlimited room/resource management (tested up to 20 rooms) * Set maximum bookings per user per room (default: 3) * Configure closed days (e.g., closed every Sunday) * Set week start day preference * Customizable booking titles (Room, Chalet, Court, etc.) * Filter bookings by status, room, or date range * Bulk actions for efficient management * Statistics dashboard
Form Fields & Validation: * First Name (required, validated) * Last Name (required, validated) * Email Address (required, email format validation) * Phone Number (required, phone format validation) * Booking Date (required, validated against past dates and closed days) * Notes/Comments (optional)
Email Features: * Customizable email templates for: — User booking confirmation — User booking denial — Admin new booking notification * Available template tags: — {first_name}, {last_name} — {email}, {phone} — {room_name}, {booking_title} — {booking_date}, {booking_time} — {booking_id}, {status} — {site_name}, {site_url} — {manage_url}
Security Features: * SQL injection protection via prepared statements * XSS protection via proper escaping and sanitization * CSRF protection via nonce verification * User authentication requirement * Role-based access control * Secure AJAX handling
Additional Information
Requirements
- WordPress 5.8 or higher
- PHP 7.4 or higher
- MySQL 5.6 or higher
Support
For support, please visit the plugin support forum or contact us through our website.
Development
This plugin follows WordPress coding standards and best practices: * Proper data sanitization and validation * Prepared SQL statements for security * Nonce verification for forms * Translatable strings with text domain * Action and filter hooks for extensibility * Object-oriented architecture * No PHP errors or warnings in debug mode
Credits
Developed with attention to WordPress coding standards and security best practices.
Privacy Policy
This plugin stores the following user data: * First name, last name * Email address * Phone number * Booking dates and times * User IP address (for security logs)
All data is stored in your WordPress database and is subject to your site’s privacy policy. No data is sent to external services.
Technical Details
Database Tables
- wp_irbsfh_bookings — Stores all booking records
- wp_irbsfh_rooms — Stores room/resource information
- wp_irbsfh_settings — Stores plugin settings
AJAX Actions
- irbsfh_load_calendar — Load calendar for specific month
- irbsfh_check_availability — Check room availability
- irbsfh_submit_booking — Submit new booking
- irbsfh_cancel_booking — Cancel user booking
- irbsfh_admin_confirm_booking — Admin approve booking
- irbsfh_admin_deny_booking — Admin deny booking
- irbsfh_admin_delete_booking — Admin delete booking
- irbsfh_admin_bulk_action — Bulk booking actions
Hooks for Developers
Actions: * irbsfh_booking_created — Fires after booking is created * irbsfh_booking_confirmed — Fires after booking is confirmed * irbsfh_booking_cancelled — Fires after booking is cancelled * irbsfh_booking_deleted — Fires after booking is deleted * irbsfh_email_sent — Fires after email is sent
Filters: * irbsfh_booking_form_fields — Filter booking form fields * irbsfh_email_template_tags — Filter available email template tags * irbsfh_calendar_availability — Filter calendar availability data * irbsfh_max_bookings_per_user — Filter maximum bookings constraint
Minimum Requirements
- WordPress 5.8 or greater
- PHP version 7.4 or greater
- MySQL version 5.6 or greater OR MariaDB version 10.1 or greater
Recommended Requirements
- WordPress 6.0 or greater
- PHP version 8.0 or greater
- MySQL version 5.7 or greater OR MariaDB version 10.3 or greater
- HTTPS support
