Our Booking & Appointment for WooCommerce plugin has different Booking Types.
Earlier, for the Duration-based Booking Type and Fixed Time Booking Type, you could only set the start and end times for the duration, which was limited to all Weekdays/Dates.
That was not possible if someone wanted to disable the particular time range.
Now, with v5.9.0 of Booking & Appointment Plugin for WooCommerce, you can manage the time availability of these booking types with our feature ‘Manage Time Availability’.
This feature is available for Date & Time Booking Type and Dates & Fixed Time Booking Type only.
A. Admin Settings
B. Time Availability for different Booking Types
A. Admin Settings
1) At Global Level
To configure this setting at the Global level, you can go to Booking > Settings > Bulk Booking:
Select the Bulk Products or Product Category. Go to the Availability Tab:
Scroll down to find the Manage Time Availability setting. Click the Add button:
This will ensure that the settings you choose here will be applied to all the products in your store.
2) At Product Level
If you wish to apply these settings to a particular product then you will have to configure this setting at the Product level.
You can go to the Edit Product Page & scroll down to the Booking meta box.
Go to Availability Tab > Manage Time Availability:
Now, let’s have a look at the settings.
1. Range Type
The different range types for managing time availability are as such:
A. Date range
Selecting this will allow you to set a range from one date to another.
For instance, if you wish to manage the time availability of a booking from 1st December 2021 to 5th December 2021, then you can choose this option.
B. Range of Months
If you wish to manage time availability from one month to another, for instance, from January to March, then you can choose this option.
C. Range of weeks
In a Range of weeks, you can either assign the full week for availability or make it disabled for booking, by enabling or disabling the bookable option.
D. Range of days
If you wish to manage time availability from one specific day to another, for instance from Monday to Wednesday, then you can choose this option.
E. Time Ranges
The following are the different options that fall under Time Ranges:
a) Time Range (all week)
If you wish to set a specific time range for all weeks then you should select this option.
For example, if you wish to make 9 AM to 10 AM bookable for the whole week, you can choose this option.
b) Date range with recurring time
You wish to allow bookings for a particular date range at a particular time.
For instance, if you want bookings to be enabled from 2nd December 2021 to 10th December 2021 only from 1 PM to 2 PM, then you can choose this option.
This would allow the recurring time of 1 PM to 2 PM from the specific date range to be enabled.
c) Specific Days
This option will allow you to set a time range for the selected specific days.
For instance, if you wish to enable bookings for Mondays from 10 AM to 2 PM, you can choose this setting.
2. From and To
As discussed earlier, here you can select the Date, Day, or Time from which a certain range will begin and end.
3. Bookable
This setting will allow you to enable or disable the booking for the range that you have selected.
4. Priority
This setting will allow you to choose which range type will be considered first.
If one of your ranges is set to the lowest priority, that range will be considered first.
For instance in the following case:
The Range of Months has a lower priority than the Date range, thus, the Range of months would be considered first.
5. Action
This section allows you to Edit or Delete a particular Range Type and its settings.
After editing the range type, you can press the Update button.
6. Make all data block unavailable
If you enable this option then all the dates in the calendar will be disabled.
You can enable desired dates for bookings using the different Range Types.
Now, let’s how Manage Time Availability works for different Booking Types.
B. Time Availability for different Booking Types
The different booking types that will be covered here are:
1) Duration Based Time
2) Fixed Time
3) Dates & Fixed Time
1) ‘Duration Based Time’ under Date & Time Booking Type
Let’s say that you offer Bookings for a Conference Hall.
Here are the settings that have been configured for the Conference Hall based on the Booking Type Duration Based Time:
The Duration of our Conference Hall is set to 1 hour.
The Duration Start Range is 9:00 (9 AM) and the Duration End Range is 18:00 (6 PM).
Scroll down to set the Manage Time Availability for Mondays, Wednesdays, and Fridays as shown below:
The Time Availability for Mondays is set to be Bookable from 10 AM to 2 PM.
For Wednesdays, it is set to be Bookable from 8 AM to 8 PM.
For Fridays, it is set to Non-bookable from 12 PM to 4 PM.
Let’s see how these Time availability settings will work in different Cases.
Case 1:
Make all data block unavailable – Disabled
Monday – 10 AM to 2 PM – Bookable
Wednesday – 8 AM to 8 PM – Bookable
Friday – 12 PM to 4 PM – Non-bookable.
On the front end, All the days/dates will start from 9 AM and end at 6 PM.
Since the main bookable time is set from 9 AM to 6 PM, the bookable time added for Mondays (10 AM to 2 PM) and Wednesdays (8 AM to 8 PM) will not be effective.
This means, that for dates falling on Mondays and Wednesdays, the Bookable Time would be from 9 AM to 6 PM because of our main bookable time.
For example, here’s how the Booking calendar will appear for Monday 13th September 2021:
Since 12 PM to 4 PM is set as Non-bookable, then on the front end, for Friday, the booking time slots that would be available would be from 9 AM to 12 PM and 4 PM to 6 PM.
For example, here’s how the Booking calendar will appear for Friday 17th September 2021:
Case 2:
Make all data block unavailable – Enabled
Monday – 10 AM to 2 PM – Bookable
Wednesday – 8 AM to 8 PM – Bookable
Friday – 12 PM to 4 PM – Non-bookable.
All data block unavailable are enabled on the front end.
Thus, all the days/dates will be disabled except Mondays and Wednesdays because those were the two days that were set to be Bookable.
Since Friday’s booking was not enabled, the added range for Friday will not be effective & thus it will not appear as Booking Dates in the Calendar as shown below:
The Start & End times for them will be 10 AM to 2 PM and 9 AM to 6 PM respectively.
If a customer chooses a date on Monday, then they will get to view booking timeslots from 10 AM to 2 PM since that is the start time and end time.
For example, after selecting Monday, 13th September 2021, the booking timeslots available are as shown below:
If a customer selects a date on Wednesday, the time availability displayed will be from 9 AM to 6 PM since the main start and end time is set to 9 AM to 6 PM.
Adding a range out of Wednesday’s time range will not be effective.
Here’s how it will appear on the front when Wednesday 15th September 2021 is chosen by a customer:
Case 3:
Make all data block unavailable – Disabled
No Ranges are added.
Since a range has not been added to manage time availability, the Duration Start and End range for days added will be displayed for all the enabled weekdays.
For example, if you have enabled all the weekdays, then selecting any one of them will display the start and end time as 9 AM to 6 PM:
Case 4:
Make all data block unavailable – Enabled
No Ranges are added.
In this scenario, ‘all data block unavailable’ is enabled.
This would mean that all the dates in the calendar would be disabled except for the ones added to the Range.
Since a Range type hasn’t been added, no dates would be available for the customer.
Thus, on the front end, ‘The product is currently unavailable for the booking. Please try again later’ message will be displayed.
2) ‘Fixed Time’ under Date & Time Booking Type
Let us say that you offer medical appointments.
For this, you have selected the Booking Type as Fixed Time.
Here are the settings that have been configured for the medical appointments:
Go to the Availability tab and select our Appointment Days:
Next, let’s keep one-hour timeslots from 9 AM to 6 PM.
Case 1:
Make all data block unavailable – Disabled
Monday – 10 AM to 2 PM – Bookable
Wednesday – 8 AM to 8 PM – Bookable
Friday – 12 PM to 4 PM – Non-bookable
On the front end, the customer views all the days/dates with all the time slots that have been added from 9 AM to 6 PM.
For instance, if the customer selects a date on Tuesday, 7th September 2021, they will get to choose their time slots from 9 AM to 6 PM as shown below:
Now, if a customer chooses a date on a Monday or Wednesday, then they will be displayed the fixed timeslots that range from 9 AM to 6 PM since it was already set in the Set Weekdays/Dates and its Timeslots table.
Adding range as bookable out of this time range will not be effective.
This means the bookable timeslots added in Manage Time Availability for Mondays (10 AM to 2 PM) and Wednesdays (8 AM to 8 PM) will not be effective.
To illustrate, here’s the frontend display of choosing Monday, 13th September 2021:
If the customer chooses a date on Friday, then the time slots that fall between 12 AM to 4 PM will be unavailable since we have made them non-bookable.
Here’s how it will appear on the front when the customer chooses Friday, 17th September 2021 as their appointment date:
Case 2:
Make all data block unavailable – Enable
Monday – 10 AM to 2 PM – Bookable
Wednesday – 8 AM to 8 PM – Bookable
Friday – 12 PM to 4 PM- Non-bookable
Since we have decided to enable Make all data block unavailable, this would mean that all the dates in the calendar would be disabled except for the ones added under the Manage Time Availability table.
This means that on the front end, all the days/dates will be disabled except Monday and Wednesday.
Since Friday is not enabled, the added range for Friday will not be effective & thus no dates would appear for Fridays:
For Monday, the fixed time slots fall between 10 AM to 2 PM.
If a customer selects Monday, 20th September 2021, then they will be displayed those timeslots only:
For Wednesday, the bookable time slots are from 8 AM to 8 PM.
However, the availability of the fixed time will fall between 9 AM to 6 PM since the main start and end time is set to 9 AM to 6 PM. That’s why, adding range out of this time range will not be effective.
For instance, on Wednesday, 15th September 2021, the customer will get to view all the fixed time slots from 9 AM to 6 PM as shown below:
Case 3:
Make all data block unavailable – Disabled
No Ranges are added.
In the front end, all the enabled weekdays will be displayed and all the time slots will appear in the dropdown/list view.
Since appointments have been enabled for all days with one-hour fixed time slots from 9 am to 6 PM, then all of them will be displayed on the front as shown below:
Case 4:
Make all data block unavailable – Enabled
No Ranges are added.
As discussed earlier, if Make all data block unavailable is enabled, then all the booking dates and timeslots will be disabled.
Thus, on the front end, instead of seeing appointment dates and timeslots, the customer will get a message that says ‘The product is currently unavailable for the booking. Please try again later.’
3) ‘Dates & Fixed Time’ under Multiple Dates Booking Type
Under Multiple Dates Booking Type, one of the booking types that you will see is ‘Dates & Fixed Time’.
Let’s say that you offer Guitar lessons. For this, you have selected the Booking Types Dates & Fixed Time.
Here are the settings that you need to configure for it:
Go to the Availability tab.
Add the following timeslots. For instance, the fixed time slots added are from 9 AM to 6 PM.
The timeslots are for one hour each. The customer will have to choose 2 dates for this booking.
After adding them, it will look like this:
Next, go to the Manage Time Availability section:
Case 1:
Make all data block unavailable – Disabled
Monday – 10 AM to 2 PM – Bookable
Wednesday – 8 AM to 8 PM – Bookable
Friday – 12 PM to 4 PM – Non-bookable
On the front end, the customer will view all the days/dates with all the time slots that were added from 9 AM to 6 PM.
The range added for Monday and Wednesday as Bookable will not be effective. This is because our main bookable time is already enabled.
For instance, if a customer chooses one of their dates as Wednesday 15th September 2021, all the time slots from 9 AM to 6 PM will appear for them:
Now, if the customer decides to go for Friday 17th September 2021 as their second date, then they will get to view all the slots except the ones from 12 PM to 4 PM since they were made non-bookable:
Case 2:
Make all data block unavailable – Enable
Monday – 10 AM to 2 PM – Bookable
Wednesday – 8 AM to 8 PM – Bookable
Friday – 12 PM to 4 PM – Non-bookable
Since Make all data block unavailable is enabled, all the dates in the calendar would be disabled except for the ones added under the Manage Time Availability table.
This means that on the front end, all the days/dates will be disabled except Monday and Wednesday.
Since Friday is not enabled, the added range for Friday will not be effective & thus no dates would appear for Fridays:
For Monday, the fixed time slots fall between 10 AM to 2 PM.
If a customer selects Monday, 20th September 2021, then they will be displayed those timeslots only:
For Wednesday, the time slots set to bookable are from 8 AM to 8 PM.
However, on Wednesdays, the customer will get to view all the fixed time slots from 9 AM to 6 PM because of the main bookable time.
The range added will not be effective. For instance, the second date & time is selected as Wednesday 22nd September 2021:
Using the Time Management Availability feature will easily help you manage time availability for different Time-based bookings & services that you provide on your WooCommerce store!