Recurring Appointments addon allows your clients pick a time slot and its repeating instances easily. Addon also provides a setting to create a custom UI with two pulldown menus (Number of repeats and recurrence frequency) and texts in between.
- Visit WP BASE → Business Settings → Services page
- Choose the service you want recurring appointments to be enabled and click More link and click Enable checkbox. Please note that you can enable recurring appointments per service.
- You can select which recurrence frequencies (called repeat units), are available to the client on the front end e.g. daily, weekly, monthly. To do so, select desired repeat units by checking Allow checkbox.
- You can also select maximum number of repeats for each repeat unit by entering required number in the “Max” field. In any case, on the front end client will not be able to pick up a repeat number exceeding your Booking submission upper limit. For example if your upper limit is 60 days, weekly selection will be limited to 8.
- There are 3 monthly modes each having different behaviour. Choose only one of them. When client attempts to pick 31st of January (2018) for 4 months:
- “Same day of week” will pick 31st of January, 28th of February, 28th of March, 25th of April, because they are all Wednesday.
- “Same day of month” will pick 31st of January, 28th of February, 31st of March and 30th of April. That is, it will compensate impossible dates with last day of the month, staying in the desired month.
- “Same day of month – strict” will not allow 31st of January to be picked in the first place, because 31st of February is not possible.
- To activate recurring feature of a service, Enabled checkbox should be checked and at least one repeat unit should be marked as “Allow”. Max fields can be left empty.
- One of the cool features of the addon is customizing front end selection menu using View of the menu field. REPEAT_UNIT and REPEAT placeholders used in this field will be replaced with repeat unit (i.e. daily, weekly, monthly, etc) dropdown and number of repeats (1,2,3,…) dropdown, respectively. The default value is “REPEAT_UNIT for REPEAT times” which may be displayed as “Monthly for 3 times”, for example. Modifying custom texts for weekly, monthly etc terms and using this field you can have a user friendly selection per service. REPEAT placeholder must always be used. REPEAT_UNIT can be omitted, provided that there is only one allowed repeat unit.
- You can configure other services on the same page as above. When finished click Save Services button.
- When a service is enabled and correctly configured as recurring, a “R” will be seen on top-right of service ID in the List of Services.
In Combination with Other WP BASE Addons
- Variable Durations and Recurring Appointments can be used in combination. For example if a 2 hours training is set to be 4 hours at the weekends in Time variant Durations, selecting 7 days will automatically include extra hours for the weekends and price will be correctly calculated from unit price.
- Recurring Appointments and Selectable Durations can be used in combination. For example, client can select 1, 2 or 4 hours of a service recurring every week for 1 to 8 weeks (numbers are arbitrary).
- You may consider using Shopping Cart in combination with Recurring Appointments. Then your client can remove unsuitable time slots on the confirmation form and add preferred ones.
- When using Recurring Appointments and Multi Language addon together, you can define View of the Menu for each website language separately. Then client will see menu configured for their language. Please do not translate REPEAT and REPEAT_UNIT words, because they are just placeholders, not words to be translated.
- Recurring Appointments and Packages can be used in combination. For an example see Packages addon. Please note that both addons require several iterations to mark a time slot as available or not. Therefore when used in combination, execution time may be quite high. To keep this time in tolerable limits,
- Use lesser number of time slots to be scanned, for example by selecting one month instead of two months for Monthly Calendar View,
- Use smaller maximum allowed repeats,
- Avoid sequences in Packages,
- If possible avoid using service providers and use capacity field instead.
- As clients selects a service that recurring appointments is enabled, the menu configured as above will be visible. This menu is hidden if selected service does not have recurring appointments.
- While client changes his selection of repeat frequency and number of repeats, booking view will automatically update on the fly and display only time slots for which selected repeated time slots are available. For example, assuming that current date is 1st of January and if client selected 6 month repeats and the service is not available at March 15 01:00 pm because of holiday or another booking, January 15 01:00 pm and February 15 01:00 pm will not be selectable as well.
- When client clicks the time slot, which is the start of the repeat sequence, the time slot and consecutive slots complying the repeat sequence will be added to the virtual shopping cart. Note: Shopping Cart addon does not need to be enabled. If enabled, however, client can add more recurring appointment sequences of current or another service to their cart.
- Client can remove one or more time slot at the confirmation form Details field by clicking at the trash icon beside each time slot. You can disable this feature by hiding details field by Hidden Fields on Confirmation Form setting on Display Settings → Advanced Features → General Display page.
- Price of the selections will be sum of price of each time slot which can be customized with Custom Pricing addon. If you want to make special pricing based on total amount or number of repeats, there are a number of filter hooks which can be used in functions.php of your theme or Custom Functions field of WP BASE.
- When client clicks Checkout, all time slots will be saved to the database in pending mode as parent-child bookings. When client completes the payment, all pending bookings will be converted to paid.
Admin – Modifying Bookings
- Each recurring appointment time slot is saved to the database using parent-child bookings principle. You can modify each instance/booking individually at Bookings admin page.