Show HN: New way to make restaurant reservations
GitHub - vanadiuz/table-reservation: WordPress Table Reservation Plugin
 Table Reservation - Wordpress Plugin  

  
    
  


  Pick a place!


  
    
  



Table of Contents

Demo
Introduction
Features
Feedback
Build Process
FAQ
License


Introduction 👋
This plugin allows users quickly book a table in your cafe or make a restaurant reservation. Also it can be used for coworking, internet cafe (cybercafe) and night club.

  

Features 👓
A few of the things you can do with Table Reservation:

Rich schedule settings: opening hours, week days, holidays, siesta...
Custom email notifications for admin and guests
Selectable tables for reservations *(one table can't be reserved by different people simultaneously, e.g. no collisions)
Add and edit bookings from the admin panel
Check correctness of user-input data *(date, party, time, name, email, phone, message)
Mobile UX
Create and manage many Venues simultaneously
Custom setting for durations of each visit
Customisable colors, date/time format, titles etc.
WPBakery(Visual Composer) compatible


  

Feedback 🙋
Feel free to file an issue. Feature requests are always welcome.
Build Process 🔨

Clone or download the repo
Put it in wp-content/plugins/ (preferably on a locally deployed server with wordpress)
Go to table-reservation/tremtr (here is front-end web app on Vue js)
npm install to install dependencies
npm run dev to start develope app
Activate plugin inside WordPress and create a new table
Now you can modify the Vue Js code and immediately watch how it will work in Wordpress

Build Production Version of Plugin

npm run build to build front-end part of plugin
Copy JS files from ./tremtr/dist/static/js to ./assets/js
Open table-reservation.php in plagin's root and comment

  wp_register_script( 'tremtr-app', 'https://localhost:8080/app.js' , '', '', true );

In the same place uncomment and rename next lines

            // wp_register_script('tremtr-manifest', TREMTR_PLUGIN_URL . '/assets/js/manifest.6a98d09897ee4023cfac.js', array(), '1.0.0', 'screen, all');
            // wp_register_script('tremtr-vendor', TREMTR_PLUGIN_URL . '/assets/js/vendor.27bdc60e48dd445d7732.js', array(), '1.0.0', 'screen, all');
            // wp_register_script('tremtr-app', TREMTR_PLUGIN_URL . '/assets/js/app.5ba64ddd460771627e94.js', array(), '1.0.0', 'screen, all');
FAQ
You will find "Cafe" and "Reservations" menu in your WordPress admin panel.

Create scheme (Cafe -> Add new -> set featured image, select name of your cafe, draw tables markup)
Add shortcode to page
Setup schedule (Cafe -> Settings)
Slightly outdated video

Shortcode?  
[table-reservation cafe_id="2722"].
How to customize appearance of this plugin?

There is possibility to change colors in Cafe-> Settings.
Also you can override styles in assets->css->tremtr-client.css, but you can't change HTML markup, because it very hard.

How to create beautiful email template? 🌻  
Here!
Can I change the date/time format?  
Yes, set the format for front-end the datepicker in Cafe > Settings.
How to translate the plugin?  
Everything in this plugin can be translated using the standard translation process and software like PoEdit.
🔸 The language of the calendar is selected separately in the settings of the cafe (default English, uk = Ukrainian).
🔸 Files with translation (for example "tremtr-ru_RU") must be placed in the …\wp-content\languages\plugins.
Can I set up many venues/cafes/locations?  
Yes!
GDRP?  
All user data is automatically deleted in 24 hours after the reservation time. In other words, the plugin doesn't store information about users after the moment when the reservation is not relevant. Data is collected solely for table reservation purposes. No additional processing of information and compilation of statistics is carried out.
Plugin does not work!😭

Select "Post name" in Settings->Permalinks!!!
If you use W3 Total Cache(or another cache), you should turn off js minification to make everything work.
Please note that up to TWO time intervals for one day can be specified in the schedule!
The PHP version should be as fresh as possible (7 and above).

License 📄
GPL-3.0 License
