The next release of Booking & Appointment Plugin for WooCommerce, v4.0 is going to be a major release. It is expected to release on 5th June 2017.
Below is a summary list of the changes that we have done:
- Completely revamped the Product Page UI for Booking Settings
- Beautifying the frontend UI page
- Changes in the way booking settings are saved
- Saving each booking in wp_posts
- Beautifying the admin Global Booking Settings page
- New features
6.a. Booking Range
6.a.1. Create multiple
6.a.2. Create booking range by selecting months
6.b. Multiple day bookings
6.b.1. Ability to set Maximum Booking length
6.b.2. Ability to enable or disable weekdays
6.c. Remove calendar icon
We started working on this update in mid February 2017. That was after we had just finished the planning for all our plugins for 2017. Some of the features in this update were ready as early as March, but due to the release of WooCommerce 3.0.0, we had to shift our focus to that. We wanted to make sure our existing customers didn’t face any issues after updating to WooCommerce 3.0.0. So until April 5th, we were mostly occupied with issues pertaining to that & releasing an update to all our plugins.
Below are the details of each point mentioned above:
1. Completely revamped the Product Page UI for Booking Settings
The Booking meta box on the Add/Edit product page has been re-organized.
Currently we have 8Â tabs as shown below:
All the above settings are now made available in 3 tabs:
General tab
A new field, Booking Type has been added. Earlier we didn’t have a clear identification. We had Recurring Weekdays, Specific Dates, Enable Time & Allow Multiple days. Now, we have divided into 2 main booking types: Only Day, Date & Time
Only Day booking type further has 2 options: Single Day & Multiple Nights
This was earlier called “Allow Multiple days”. Since the checkout date in this case is not included in the booking period, some customers had mentioned that we should mention that it is based on nights & not days. Hence the change of term to Multiple Nights.
Availability tab
The Availability tab allows you to select the bookable weekdays. It also allows you to set a maximum booking & a special price for each weekday. The prices were earlier being taken from the Special Price tab. That tab has been removed now.
The Set Availability by Dates/Months allows you to add Specific Dates, Holidays & Date Ranges.
Similarly, for Appointment Bookings, you will be able to add time slots right from the Availability tab itself:
A Save Changes button is added to every tab. You won’t need to go all the way up & click on Update button to save your booking settings.
Google Calendar Sync tab
The Google Calendar Sync tab is unchanged. That one stays as it was previously.
Fixed Block Booking, Price by range of days tab
The Fixed Block Booking & Price by range of days tabs are hidden by default. They only get enabled for multiple day bookings.
2. Beautifying the frontend UI page
Some changes have been added to the frontend product page.
As shown above, the booking fields have a border around them, and for Appointment bookings, the customer now has a message to select a date first & then the time. Earlier the Booking Time label was not present.
3. Changes in the way booking data is saved
Due to the changes in the way the booking settings are now added to the product, those settings are now stored differently.
Booking Product Data
Now the product’s booking settings are also saved individually along with being saved in a single json object in woocommerce_booking_settings meta key.
For the next few updates, we will continue to save the product’s booking settings both individually & in the single record as well. Eventually the woocommerce_booking_settings record will be removed.
Booking Order Data
For each order that is placed, we are now adding some meta data to the wp_postmeta table:
Once you update the plugin, an automatic update will be run on your current booking product settings. If for some reason, that update fails, then you will be notified about it with an admin notice.
If the update fails for some reason, you will have a chance to run it manually either by clicking Update button above. You could also visit the Booking -> Settings page in that case.
So you will have an option to run the update from 2 places.
Please bare in mind, this is mandatory for the update process to be completed. Your bookings will NOT function smoothly unless this is done.
4. Saving each booking in wp_posts
From v4.0, each booking order that is placed will be stored as a post in the wp_posts table. A new post type, bkap_booking will contain all the orders placed through the Booking & Appointment plugin.
The View Bookings page will eventually show the records from this table instead of showing from the wp_booking_history & wp_booking_order_history tables.
5. Beautifying the admin Global Booking Settings page
We have given a new style to the Global Booking Settings page. Nothing major there, but it looks better now:
6. New features
This update largely contains backend changes more. There are only a few new features:
6.a. Booking Range
6.a.1. Create multiple
Earlier we did have the option to add a booking range where the admin could specify a date range that is supposed to be bookable. Now, the admin can specify multiple ranges throughout the year that can be bookable. Admin can also set if they are recurring yearly or not.
6.a.2. Create booking range by selecting months
In the Availability tab, you can create a range simply by selecting a start month & end month.
6.b. Multiple day bookings
6.b.1. Ability to set Maximum Booking length
So far, we have had only Minimum number of nights to book, where you can set number of nights that is required minimum for the booking to proceed. We have now also added a Maximum number of nights to book option in the Availability tab.
This will be useful when you want to limit the booking length.
6.b.2. Ability to enable or disable weekdays
For Multiple Night bookings, it was not possible to disable weekdays from the settings. We do have a filter that allows to disable specific weekdays when using Multiple Night bookings. But now, that has been added in the UI itself in the Availability tab.
6.c. Remove calendar icon
Some customers had asked us if it’s possible to remove the calendar icon that gets displayed on the frontend booking field. That has been added now. We will also add an option to add a custom calendar icon there. Currently you can either use the default icon or remove the icon.
This field is added in Booking -> Settings -> Labels & Messages page
Testing
If you can help us do beta testing for this release, that would be great. Please email us on [email protected] or drop a line in the comments below if you can help.
Great news… I would love to test it asap
Thanks Mario for volunteering. We will get back to you next Tuesday or Wednesday. The plugin’s 1st round of bugs will be fixed by then.
Thank you! I must admit some of the changes are addressing user interface aspects which I hoped could have been improved. You read my mind! I am looking forward to testing them on the field!