{"id":351375,"date":"2026-08-12T12:09:18","date_gmt":"2026-08-12T12:09:18","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/automaize-restaurant-reservation\/"},"modified":"2026-08-13T07:15:43","modified_gmt":"2026-08-13T07:15:43","slug":"automaize-restaurant-reservation","status":"publish","type":"plugin","link":"https:\/\/li.wordpress.org\/plugins\/automaize-restaurant-reservation\/","author":23333048,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.5.0","stable_tag":"1.5.0","tested":"7.0.4","requires":"6.3","requires_php":"7.4","requires_plugins":null,"header_name":"Automaize Restaurant Reservation","header_author":"Automaize","header_description":"Simple table reservation system for restaurants. Visitors pick a party size, date and time, see live table availability and receive an instant email confirmation. Add the form to any page with the [amzres_reservation_form] shortcode.","assets_banners_color":"","last_updated":"2026-08-13 07:15:43","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":50,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.3.0":{"tag":"1.3.0","author":"automaize","date":"2026-08-12 12:08:53"},"1.5.0":{"tag":"1.5.0","author":"automaize","date":"2026-08-13 07:15:43"}},"upgrade_notice":{"1.5.0":"<p>Adds an optional cancellation email with a custom message, and an email sender name setting. Safe to update, no manual steps required.<\/p>","1.4.0":"<p>Adds a printable daily reservations list. Safe to update, no manual steps required.<\/p>","1.3.0":"<p>Internal renaming for WordPress.org compliance; all existing tables\/settings are migrated automatically. Safe to update.<\/p>","1.2.0":"<p>Adds closed periods (holidays\/vacation) under Settings. Safe to update, no manual steps required.<\/p>","1.1.0":"<p>Adds an optional special requests field; fixes a time slot selection bug. Safe to update, no manual steps required.<\/p>","1.0.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.3.0","1.5.0"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"The frontend reservation form.","2":"The Tables admin screen.","3":"The Reservations admin screen.","4":"The opening hours settings screen."}},"plugin_section":[],"plugin_tags":[269,76538,722,20710,34016],"plugin_category":[39,40],"plugin_contributors":[257766],"plugin_business_model":[],"class_list":["post-351375","plugin","type-plugin","status-publish","hentry","plugin_tags-booking","plugin_tags-elementor","plugin_tags-reservation","plugin_tags-restaurant","plugin_tags-table-booking","plugin_category-business","plugin_category-calendar-and-events","plugin_contributors-automaize","plugin_committers-automaize"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/automaize-restaurant-reservation.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Automaize Restaurant Reservation adds a simple, self-contained table booking form to your restaurant website.<\/p>\n\n<p><strong>For the restaurant owner:<\/strong><\/p>\n\n<ul>\n<li>Define your weekly opening hours (per day of the week).<\/li>\n<li>Add closed periods for holidays or vacation, which override the weekly hours for those dates.<\/li>\n<li>Add your tables, each with its own seat count.<\/li>\n<li>Choose which reservation lengths guests can pick from (e.g. 60, 90, 120 minutes).<\/li>\n<li>Set the email address that should receive new reservation notifications.<\/li>\n<li>Set the sender name shown on reservation emails, instead of \"WordPress\".<\/li>\n<li>Manage and cancel reservations from a simple admin screen, optionally emailing the guest a cancellation notice with your own custom message.<\/li>\n<li>Print a clean, ready-to-hand-to-staff daily reservations list for any date.<\/li>\n<\/ul>\n\n<p><strong>For your guests, on the reservation form:<\/strong><\/p>\n\n<ol>\n<li>Enter the number of guests.<\/li>\n<li>Pick a date and how long they'd like to stay.<\/li>\n<li>See, in real time, whether a table is available for that party size and time.<\/li>\n<li>Enter their name, email, optionally a phone number and any special requests, and book instantly.<\/li>\n<li>Receive an email confirmation. The restaurant owner is notified by email as well.<\/li>\n<\/ol>\n\n<p>The plugin matches each reservation to the smallest available table that fits the party size, so a party of two won't tie up your largest table, and automatically prevents double-booking a table for overlapping time windows.<\/p>\n\n<p>No external services or API keys required, and no data ever leaves your site.<\/p>\n\n<h4>AI disclosure<\/h4>\n\n<p>This plugin's code was developed with the assistance of an AI coding tool (Claude, by Anthropic). All code was reviewed and tested by Automaize before release.<\/p>\n\n<h4>Usage<\/h4>\n\n<p>Add the reservation form to any page or post in either of these ways:<\/p>\n\n<ul>\n<li><strong>Shortcode:<\/strong> place <code>[amzres_reservation_form]<\/code> in the page\/post content, in a Shortcode block, or in any widget area that supports shortcodes.<\/li>\n<li><strong>Elementor:<\/strong> drag the \"Restaurant Reservation Form\" widget (listed under the General category) onto the page, if Elementor is active.<\/li>\n<\/ul>\n\n<p>Both display the exact same form; there is nothing extra to configure per placement, since opening hours, tables and durations are all set once under <strong>Reservations<\/strong>.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin files to the <code>\/wp-content\/plugins\/automaize-restaurant-reservation<\/code> directory, or install the plugin through the WordPress plugins screen directly.<\/li>\n<li>Activate the plugin through the \"Plugins\" screen in WordPress.<\/li>\n<li>Go to <strong>Reservations \u2192 Tables<\/strong> and add your tables.<\/li>\n<li>Go to <strong>Reservations \u2192 Settings<\/strong> and set your opening hours, allowed reservation durations and notification email. The shortcode is also shown on this screen.<\/li>\n<li>Add the <code>[amzres_reservation_form]<\/code> shortcode to a page, or add the \"Restaurant Reservation Form\" widget in Elementor.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"can%20i%20have%20different%20opening%20hours%20per%20day%3F\"><h3>Can I have different opening hours per day?<\/h3><\/dt>\n<dd><p>Yes. Each day of the week has its own opening\/closing time, and can be marked closed entirely.<\/p><\/dd>\n<dt id=\"can%20i%20close%20the%20restaurant%20for%20a%20holiday%20or%20vacation%3F\"><h3>Can I close the restaurant for a holiday or vacation?<\/h3><\/dt>\n<dd><p>Yes. Under <strong>Reservations \u2192 Settings<\/strong>, add a closed period with a start and end date (and an optional reason, for your own reference). Dates within that range are treated as closed regardless of the weekly opening hours.<\/p><\/dd>\n<dt id=\"can%20i%20print%20a%20list%20of%20the%20day%27s%20reservations%20for%20my%20staff%3F\"><h3>Can I print a list of the day's reservations for my staff?<\/h3><\/dt>\n<dd><p>Yes. On <strong>Reservations<\/strong>, pick a date next to \"Print daily list for\" and click Print. It opens a clean, printer-friendly page listing that day's confirmed reservations by time, with table, party size, guest and contact details.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20two%20guests%20try%20to%20book%20the%20last%20table%20at%20the%20same%20time%3F\"><h3>What happens if two guests try to book the last table at the same time?<\/h3><\/dt>\n<dd><p>Availability is re-checked on the server at the moment a reservation is submitted, so only one of them will succeed; the other is asked to choose a different time.<\/p><\/dd>\n<dt id=\"does%20this%20plugin%20send%20confirmation%20emails%3F\"><h3>Does this plugin send confirmation emails?<\/h3><\/dt>\n<dd><p>Yes, it uses <code>wp_mail()<\/code> to send a confirmation to the guest and a notification to the restaurant's configured email address. When you cancel a reservation from the admin screen, you can optionally send the guest a cancellation email with your own custom message.<\/p><\/dd>\n<dt id=\"can%20i%20change%20the%20sender%20name%20shown%20on%20these%20emails%3F\"><h3>Can I change the sender name shown on these emails?<\/h3><\/dt>\n<dd><p>Yes. Under <strong>Reservations \u2192 Settings \u2192 Email sender name<\/strong>, set the name shown to recipients instead of the WordPress default \"WordPress\". It defaults to your site's name.<\/p><\/dd>\n<dt id=\"does%20this%20require%20any%20external%20services%20or%20api%20keys%3F\"><h3>Does this require any external services or API keys?<\/h3><\/dt>\n<dd><p>No. Everything runs on your own WordPress installation.<\/p><\/dd>\n<dt id=\"does%20this%20work%20with%20elementor%3F\"><h3>Does this work with Elementor?<\/h3><\/dt>\n<dd><p>Yes, a native \"Restaurant Reservation Form\" widget is available in the Elementor editor (under the General category) whenever Elementor is active. It renders the exact same form as the <code>[amzres_reservation_form]<\/code> shortcode.<\/p><\/dd>\n<dt id=\"does%20this%20work%20with%20breakdance%20or%20other%20page%20builders%3F\"><h3>Does this work with Breakdance or other page builders?<\/h3><\/dt>\n<dd><p>Yes. Use the <code>[amzres_reservation_form]<\/code> shortcode in your page builder's Shortcode or Code\/HTML element (Breakdance, Divi, Bricks, etc. all provide one). The form works the same way everywhere it's placed.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.5.0<\/h4>\n\n<ul>\n<li>Added an optional cancellation email: when cancelling a reservation from the admin screen, you can now include your own custom message, or skip the email entirely.<\/li>\n<li>Added an \"Email sender name\" setting so reservation emails no longer show \"WordPress\" as the sender.<\/li>\n<\/ul>\n\n<h4>1.4.0<\/h4>\n\n<ul>\n<li>Added a printable daily reservations list: pick a date on the Reservations screen to open a clean, print-ready page for handing to staff.<\/li>\n<\/ul>\n\n<h4>1.3.0<\/h4>\n\n<ul>\n<li>Renamed all internal function, class, hook and option names to use a unique <code>amzres_<\/code>\/<code>AMZRES_<\/code> prefix (previously <code>arr_<\/code>\/<code>ARR_<\/code>, which was too short and could conflict with other plugins), per WordPress.org plugin review requirements. Existing data is migrated automatically on update; no action needed.<\/li>\n<li>Removed the bundled German translation files. Translations for WordPress.org-hosted plugins are managed automatically via translate.wordpress.org.<\/li>\n<\/ul>\n\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>Added closed periods (holidays, vacation): date ranges under Settings that override the weekly opening hours.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Added an optional \"Special requests\" field to the reservation form, shown to the restaurant owner in the admin reservations list and in both emails.<\/li>\n<li>Fixed the time selector only ever showing one bookable time slot in some setups.<\/li>\n<li>Fixed the anti-spam honeypot field being visible when the form was rendered outside the shortcode's own page content (e.g. some page builder widgets).<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"A simple table reservation system for restaurants. Guests check live availability by party size and time, then get an instant email confirmation.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/351375","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=351375"}],"author":[{"embeddable":true,"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/automaize"}],"wp:attachment":[{"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=351375"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=351375"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=351375"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=351375"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=351375"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=351375"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}