NateWr / restaurant-reservations

WordPress plugin to accept restaurant reservations online
68 stars 51 forks source link

Restaurant Reservations

Contributors: NateWr Author URI: https://github.com/NateWr Plugin URL: https://themeofthecrop.com Requires at Least: 4.4 Tested Up To: 5.1 Tags: restaurant, reservations, bookings, table bookings, restaurant reservation, table reservation Stable tag: 1.8.2 License: GPLv2 or later Donate link: https://themeofthecrop.com

Accept restaurant reservations and table bookings online. Quickly confirm or reject bookings, send email notifications, set booking times and more.

Description

Accept restaurant reservations and table bookings online. Quickly confirm or reject bookings, send out custom email notifications, restrict booking times and more.

Theme of the Crop builds plugins that help restaurants manage responsive online menus and boost their SEO.

How to use

Read the User Guide for quick tips on how to get started taking reservations.

Addons

Custom Fields for Restaurant Reservations - Add custom fields and edit your booking form with ease.

Email Templates for Restaurant Reservations - Subscribe emails from new restaurant reservations to your MailChimp mailing list.

Export Bookings for Restaurant Reservations - Export your restaurant reservations to PDF and Excel/CSV files.

MailChimp for Restaurant Reservations - Subscribe emails from new restaurant reservations to your MailChimp mailing list.

Developers

This plugin is packed with hooks so you can extend it, customize it and rebrand it as needed. Take a look at the Developer Documentation.

Development takes place on GitHub, so fork it up.

Installation

  1. Unzip restaurant-reservations.zip
  2. Upload the contents of restaurant-reservations.zip to the /wp-content/plugins/ directory
  3. Activate the plugin through the 'Plugins' menu in WordPress
  4. Go to Bookings > Settings to set up the page to display your booking form.

Frequently Asked Questions

Is there a shortcode to print the booking form?

Yes, use the [booking-form] shortcode.

Can I change the format of the date or time?

Yes, set the format for the datepicker in Bookings > Settings. The format used in the backend will depend on the date and time formats in your WordPress settings.

The datepicker or timepicker is not working.

If you load up the form and no date or time picker is popping up when you select those fields, this is likely caused by a Javascript error from another plugin or theme. You can find the problematic plugin by deactivating other plugins you're using one-by-one. Test after each deactivation to see if the date and time pickers work.

If you have deactivated all other plugins and still have a problem, try switching to a default theme (one of the TwentySomething themes).

I'm not receiving notification emails for new bookings.

This is almost always the result of issues with your server and can be caused by a number of things. Before posting a support request, please run through the following checklist:

  1. Double-check that the notification email in Bookings > Settings > Notifications is correct.
  2. Make sure that WordPress is able to send emails. The admin email address in the WordPress settings page should receive notifications of new users.
  3. If you're not able to receive regular WordPress emails, contact your web host and ask them for help sorting it out.
  4. If you're able to receive regular WordPress emails but not booking notifications, check your spam filters or junk mail folders.
  5. If you still haven't found the emails, contact your web host and let them know the date, time and email address where you expected to receive a booking. They should be able to check their logs to see what is happening to the email.

Can I make the phone number required?

This is a common request so I have written a small addon to do this for you. Learn more.

Can I translate the booking form?

Yes, everything in this plugin can be translated using the standard translation process and software like PoEdit. If you're not familiar with that process, I'd recommend you take a look at the Loco Translate plugin, which provides a simple interface in your WordPress admin area for translating themes and plugins.

If you make a translation, please help others out by adding it to the GitHub repository so that I can distribute it for others.

I set Early or Late Bookings restrictions, but I scan still book during that time

Users with the Administrator and Booking Manager roles are exempt from these restrictions. This is so that they can make last-minute changes to bookings as needed. If you want to test the Early or Late Bookings restrictions, try logging out and testing.

I want to add a field to the form. Can I do that?

The addon, Custom Fields for Restaurant Reservations, will allow you to add a field or modify some of the existing fields of the booking form. Developers who are comfortable coding up plugins for WordPress can add their own fields using the hooks provided. Developers can find a rough guide to coding a custom field in the answer to this support request.

More questions and answers

Find answers to even more questions in the FAQ.

Screenshots

  1. Easily manage bookings. View today's bookings or upcoming bookings at-a-glance. Confirm or reject bookings quickly.
  2. Easy-to-use booking form with a simple, clear style that is compatible with many themes. Minimal CSS is used to make it easier to style.
  3. Great, mobile-friendly date and time pickers to make it easy for your customers.
  4. Clear settings page to get it working how you need.
  5. Easily adjust when customers can request a booking.
  6. Customize the admin notification email when a new booking request is made. Add a quick link to confirm or reject a request straight from the email.
  7. Customize the notification email sent to a user when they make a new booking request.
  8. Customize the notification email sent to a user when their booking is confirmed. You can also customize the email sent when a booking is rejected.
  9. Add and edit bookings from an admin panel.
  10. Quickly find bookings before or after a date. You can also filter by status or view just Today's bookings.
  11. It also integrates with the Business Profile plugin to support booking for multiple locations.
  12. Access a short guide from your Plugins list to help you get started quickly.

Changelog

1.8.2 (2019-03-18)

1.8.1 (2018-12-12)

1.8 (2018-12-11)

1.7.8 (2018-09-13)

1.7.7 (2018-04-27)

1.7.6 (2017-05-15)

1.7.5 (2017-03-31)

1.7.4 (2017-03-21)

1.7.3 (2017-03-02)

1.7.2 (2017-01-12)

1.7.1 (2016-12-14)

1.7 (2016-12-05)

1.6.3 (2016-10-31)

1.6.2 (2016-08-20)

1.6.1 (2016-08-19)

1.6 (2016-06-20)

1.5.3 (2016-03-25)

1.5.2 (2016-02-29)

1.5.1 (2016-02-19)

1.5 (2015-12-17)

1.4.10 (2015-10-29)

1.4.9 (2015-10-06)

1.4.8 (2015-08-20)

1.4.7 (2015-07-02)

1.4.6 (2015-06-20)

1.4.5 (2015-04-23)

1.4.4 (2015-04-20)

1.4.3 (2015-04-20)

1.4.2 (2015-03-31)

1.4.1 (2015-03-31)

1.4 (2015-02-24)

1.3 (2015-02-03)

1.2.3 (2014-11-04)

1.2.2 (2014-08-24)

1.2.1 (2014-08-01)

1.2 (2014-07-17)

1.1.4 (2014-07-03)

1.1.3 (2014-05-22)

1.1.2 (2014-05-14)

1.1.1 (2014-05-14)

1.1 (2014-05-12)

1.0.2 (2014-05-08)

1.0.1 (2014-05-08)

1.0 (2014-05-07)

Upgrade Notice

1.8.2

This update fixes an issue with the date and time pickers that occurs with the latest version of the Chrome browser.

1.8.1

This update fixes a bug in the booking form block where the location would not be reloaded correctly after saving.

1.8

This update adds a block to the new Gutenberg editor for the booking form.

1.7.8

This update fixes a bug which removed the GDPR consent status for a booking when the booking was edited. It also adds an option to modify the FROM email header address and updates some translations.

1.7.7

This update adds two features to help you comply with GDPR privacy regulations in Europe: a confirmation field can be added to the booking form to collect a customer's consent to store their data. And you can delete all bookings related to an email address.

1.7.5

This update adds an option to require a phone, email address validation and a notification bubble showing the number of upcoming pending bookings in the admin area.

1.7.4

This update fixes an issue with time restrictions when applied to the same day one month in advance. It also adds a technique to attempt to prevent duplicate submissions. Adds Polish translation.

1.7.3

This minor maintenance update ensures scheduling restrictions are reflected in the date and time pickers. It also allows multiple email addresses to be used in location-specific admin notifications.

1.7.2

This minor maintenance update fixes a bug with the integration with the Business Profile plugin. It also adds the new Email Templates addon to the list of available addons.

1.7.1

This update fixes a critical bug introduced in v1.7 if you use bookings with the multi-location features of Business Profile. You are encouraged to update as soon as possible.

1.7

This update adds new features for banning bookings from no-shows and preventing blocked times from appearing in the time picker. New options for min party size and same-day bookings have been added. Bookings Managers can now edit bookings in the past.

1.6.2

This update fixes a critical error introduced in v1.6.1 which broke the time picker.

1.6.1

This maintenance update adds a {location} tag for notifications, improves the location argument in the booking form shortcode and fixes a few minor bugs.

1.6

This is a major update that adds support for accepting bookings at multiple locations. View the online documentation for further details.

1.5.3

This update fixes a minor bug when searching for bookings by date, updates compatibilty for WP v4.5, and adds links to the new online documentation.

1.5.2

This update fixes a bug introduced in the last version which prevented Booking Managers from approving/rejecting reservations.

1.5.1

This update increases security for the quick link feature to confirm/reject bookings from the admin notification email.

1.5

This update adds the ability to configure which columns are visible in the bookings table. It works with the Custom Fields addon. If you have added fields using custom code, please read the release notification at themeofthecrop.com before updating.

1.4.10

This update includes a new Spanish translation and a few minor fixes. Updating isn't necessary for most people.

1.4.9

This update fixes a bug that made it difficult for iOS 8 users to select a date and time in their bookings. I strongly recommend you update.

1.4.8

This update fixes a bug that prevented bookings managers from editing bookings within the early/late schedule restrictions. It also fixed a bug with late opening times, added a WPML config file for better multi-lingual compatibility, updated translations, and improved the mobile view of the bookings list.

1.4.7

This update fixes a bug that prevented bookings from being sorted by date or name in the admin panel. It also updates some translations and improves support for custom late bookings values.

1.4.6

This update improves compatibility with an upcoming Custom Fields addon. It also fixes some minor bugs with extended Latin characters in emails and the admin list table, and removes expired schedule exceptions.

1.4.5

This update fixes a non-critical issue with the display of the loading spinner in the upcoming 4.2 version of WordPress.

1.4.4

This update fixes a low-risk XSS security vulnerability. It is low-risk because in order to exploit this vulnerability a user would need to have access to the bookings management panel in the admin area, which only trusted users should have.

1.4.3

This update adds datepickers to the start/end date filters in the admin bookings list and fixes a small error with the filters. It also fixes an issue with disabled weekdays when editing bookings. Dutch and German translation updates.

1.4.2

This update is a maintenance release that fixes a couple minor issues, adds French and Italian translations, and includes some under-the-hood changes to support upcoming extensions. 1.4.1-1.4.2 fixes a rare but vital performance issue in the admin.

1.4.1

This update is a maintenance release that fixes a couple minor issues, adds French and Italian translations, and includes some under-the-hood changes to support upcoming extensions.

1.4

Thanks to sponsorship from Gemini Design, the plugin now supports sending an email directly to customers from the list of bookings, so you can request more details or suggest an alternative booking time. This update also improves the German translation and adds a Hebrew translation. Read the full changelog for details.

1.3

This update adds support for adding and editing bookings from the admin panel. The bookings panel now shows upcoming bookings by default. The Party field in the booking form is now a dropdown selection. Plus a bunch of new features and fixes. Read the full changelog for details.

1.2.3

This update adds a {user_email} notification template tag and improves the mail headers on notifications to mitigate spam risk. It also adds the missing translation for the Clear button in the time picker for many languages. More minor bug fixes listed in the changelog.

1.2.2

This update adds support for a new MailChimp addon that will be released soon. An addons page is now available under the Bookings menu. A bug in which custom date/time formats could cause validation errors has been fixed. New hooks are now in place so that it's easier to customize the form output.

1.2.1

This is a minor maintenance update which fixes a couple of small bugs.

1.2

This update adds new template tags for notification emails, a new option to customize the time interval and more. A new .pot file has been generated, so update your translations. Consult the changelog for further details.

1.1.4

This updated fixes an error with the format of the date in notification emails. Now it will show you the date formatted however you have chosen for it to be formatted in your WordPress installation. It also now displays the correct start of the week depending on the language selected for the datepicker. A .pot file is now included for easier translations.

1.1.3

This update fixes an error when the form had validation errors (missing fields or wrong date/time selected). Instead of loading the selected date it would load today's date. This update ensures the selected date is reloaded properly.

1.1.2

This update fixes an error some people may experience when trying to save settings. This is the second update today, so if you missed the other one please read the changelog for the 1.1.1 update as well.

1.1.1

This update fixes problems some users reported when using the Firefox browser to modify the booking schedule. This required an update to a library that is shared with another plugin, Food and Drink Menu. If you are using that plugin, please update that one as well or you may get some odd behavior. (Thanks to sangwh and bforsoft for reporting the issue.)

1.1

This update improves internationalization (i8n) by attempting to determine the appropriate language for the booking form datepicker from your WordPress settings. It also adds a setting to pick a language manually from a list of supported languages. This update also adds options to block late bookings at least 4 hours or 1 day in advance. Thanks to Remco and Roland for their early feedback.

1.0.2

This update removes a bit of code that was used for development purposes. Please update as this code could be run by any user on the frontend.