Our client was looking to have an automatic booking system for some rooms on their estate. They have certain rules to how the booking should be handled. They had different rates for booking different times on day and for different durations. There were some timeslots that were not bookable. The reuirement was to make it all automatic so that the user can just buy the booking. The complexity of the project and the thrill of customization made us take the project.
Our task mainly was to:
- Implement everything based on WC Booked Appointment
- Keep a separate plugin of the changes
- Manipulate the bookable timeslots, to limit bookings to the rules
- Assign the WC product based on timeslot chosen
- Fix an issue that already booked timeslot is available for booking
This was a small project with some important details.
Here’s how we solved the problem:
Everything around WC Booked Appointment
Appointments were setup using WC Booked Appointment. So it was at the center of what we did in this project.
Changes in a Plugin
Our client wanted the changes to support future updates. So he wanted to keep it separate so that it can be updated in future without modifying the core files.
Booking within Rules
Client had some timeslots and schedules set so that the user cannot book outside of this limitation. Also, we had to make sure that bookings don’t overlap each other.
Assign WC Product Automatically
There was actually products created for each timeslots. We had to find a way to assign the product when that specific timeslot was chosen to be bought.
Block Already Booked Timeslots
There was a bug in the WC Booked Appointment that already booked timeslots were available for booking. We dug into the plugin’s mechanism to find the issue and solve it with code.
Putting it all together
We made it happen at last. A room booking system based on existing proven platforms with everything working as the client wanted.
Are You Interested?
We can get you hooked to a similar project!
Some images might be subject to copyright. In case otherwise stated, the copyright belongs to the copyright holder.