Many small features have improved the user experience and performance of Booking Activities, making the latest 1.7 release significantly faster and more user-friendly than the first. Let’s review some changes you may have missed:
New features
Customize frontend booking lists
You can choose what columns to display on the frontend booking list, and you are no longer forced to filter them for the current user: [bookingactivities_list user_id="all" columns="..."]
. This allows notably to display the participants list of a specific event.
See this documentation to see all your customization options.
Change quantity
Change your bookings quantity from the backend (Booking Activities > Bookings). The quantity is changed without further checks, so be careful to keep your data consistent.
Price details column
Display a new “Price details” column in the backend booking list. Click on “Screen options” in the upper right corner of the page, and select the desired columns.
Useful when you are using WooCommerce, Prices and Credits and / or Advanced Forms.
Duplicate booking forms
Duplicate an existing booking form to save some time instead of creating a new one from scratch. In Booking Activities > Booking forms, mouseover the desired form and click on “Duplicate”.
WC: Non-“Virtual” products
A “Virtual” product, is a product you don’t need to ship.
Products used to be forced to “Virtual” when used with Booking Activities, but now, it handles non-virtual products as well. Go to Products > your product > Product data, and uncheck the “Virtual” checkbox to change it (you will find this checkbox for each variations of variable products too).
The order status changes according of the order items types:
Paid order | Unpaid order | |
---|---|---|
Virtual activities only | Order: Completed Bookings: Booked and Paid |
Order: Processing Bookings: Pending and Due |
Else | Order: Processing Bookings: Booked and Paid |
Order: Processing Bookings: Pending and Due |
New settings
“All” options
In Booking Activities > Booking forms > your form > Calendar Settings > Filters tab, the “Activity” and “Group category” options now have a “All” options.
It displays all the current and future activities / group categories without having to manually select them.
In Booking Activities > Calendar Editor > Activity or Group category settings > Permission tab, the “Who can book this activity / category of groups?” options now have a “Everybody” options.
It does the same as selecting no roles (which is still recommended): it allows all kind of users (any roles, even non-logged in users).
Notification tags
You can now use the notification tags in the email titles.
Enjoy few new notification tags too:
{user_phone} | The user phone number |
---|---|
{user_locale} | The user locale code. If the user has booked without account, the site locale will be used. |
{shortcode}{/shortcode} | Use any shortcode between these tags. |
{user_ical_url} | Relative time format now supported as parameters of this tag (E.g: {user_ical_url}&start=today&end=next+year) |
Customizable messages
Find new customization options in Booking Activities > Settings > Messages tab:
Calendar localization | Based on the “Site Language” option alone, or on the “Time format” and “Week starts on” options too |
---|---|
“Selected Events” | Title displayed before the selected events list |
“avail.” | article displayed after the number of available places onto the events |
WC: more options
Go to Booking Activities > Settings > WooCommerce tab to find two new options:
Booking form location on product pages | Display the calendar in full width on product pages |
---|---|
Bookings page in My Account | Display the booking list as a new tab in “My account” |
User Experience
Resize the UI
Resize the calendar editor sidebar and the multiple selectboxes (doesn’t work with Internet Explorer and Edge).
Dynamic selectboxes
The user and product selectboxes now use AJAX as a scalable solution to retrieve specific values according to your search. If you don’t have that many products or users, you can deactivate it by code:
add_filter( 'bookacti_user_selectbox_args', function( $args ) { $args[ 'ajax' ] = 0; return $args; }, 100, 1 );
add_filter( 'bookacti_product_selectbox_args', function( $args ) { $args[ 'ajax' ] = 0; return $args; }, 100, 1 );
WC: Order item link to the bound booking
Simply mouseover the order item and click on the “Edit the booking” button to navigate to its bound booking page.
WC: Delete expired bookings
“Expired” and “Removed” bookings have been definitely removed from the shopping cart. They are kept 10 days in your database before being permanently deleted. You can change that delay by code if necessary:
add_filter( 'bookacti_delay_before_deleting_expired_bookings', function( $delay ) { return 30; }, 10, 1 );
Compatibility
Cache plugins and CDN
Booking Activities was tested and approved with a lot of popular cache plugins and CDN.
Warning: Make absolutely sure to configure Booking Activities to load events “After page load” in Booking Activities > Settings > General > “When to load the events?” option.
Tested cache plugins and CDN:
- W3 Total Cache
- WP Super Cache
- Autoptimize
- Comet Cache
- Cache Enabler
- Warning: Doesn’t work with “Cache Minification” set to “HTML & Inline JS”. Choose either “HTML” or “Disabled”.
- SG Optimizer
- CloudFlare (CDN)
- SG SuperCacher (Siteground caching system)
WP Multisite
Booking Activities was tested and approved with WordPress’ MultiSite feature.
Finally, some code refactoring was made too to make the API easier to use for developers, and to prepare the future of Booking Activities.