Olga Aksamitnaya
Updated on

How about Property Booking? All-New JetBooking Plugin at Your Service

We’re starting a new stage with JetEngine! This multi-tool plugin is now empowered with new booking functionality, which stands for JetBooking plugin. This awesome plugin is currently released as a Beta version, so any feedback is highly appreciated!

It was created specifically for Real Estate niche, particularly, for those housing owners (or agencies) offering properties for rent for a certain period of time. So, what’s so special with this addon and how it should be used?

Small plugin – giant opportunities

Let’s start out by determining in which cases this addon will be the right solution for you. It allows creating a booking functionality for your residence with an availability check, which means your site visitor can select a certain period (check-in and check-out dates) he wants to rent this housing for. After the proper dates have been chosen, and other fields of Booking Form being fulfilled with the information, and the form itself was successfully submitted, your site administrator gets the information about the new order being placed within this apartment.

Further, you can manage the orders you’ve got and run your business. Plus, the dates, that were already booked, become unavailable for selecting for the next client. He’s getting an opportunity to use filters and see if there are any housings free to book. Those filters can be created with the help of JetSmartFilters plugin.

How does it work?

Below you can find a shorten guidance explaining the main steps.

Step 1. Creating CPTs with JetEngine

So, first of all, you need to create two Custom Post Types:

  • The first one will contain information about your properties (for example, “Rooms”);
  • The second one will the place where your future orders will be stored (for example, “Orders”).

In your Rooms CPT, you need to add your Posts and enrich them with the content according to your needs. Please, feel free to explore our tutorials explaining how to proceed with JetEngine functionality. Your second CPT Orders will be used further, and as for now, you can create clear CPT, without any meta fields or post types.  

Step 2. Adding Archive and Single pages

The next step is to create a Listing and build its layout according to your vision. After this, an Archive page should be created and the Listing Grid widget should be added to it. Once it’s done, you can proceed to build your Single Page to showcase your property item in more detail. Note! It’s crucial to know that the booking process itself will be done on the Single page!

Step 3. Apartment Booking setup

Now it’s time to explore the very core of the new functionality – Apartment Booking setting!

Navigate to JetEngine and locate it, as shown in the following screen:

Step 4. Preparing a Booking Table

With this functionality, we will build a structure for the Booking Table, which will be a kind of ‘bridge’ between client bookings and the orders you’ll receive. Navigate to JetEngine> Apartment Booking settings. Here you need to create columns for your future table and input their names.

The Booking Table will be available for checking in your database (you’ll need to go to phpMyAdmin). Once your client submits his booking via Booking Form, the information will be updated in your database. So, first things first!

Except for column names you need to set two relations

  • Related post type. It’s time to select our “Orders” CPT we created beforehand.
  • Related post type column. Define your “order_ID” value, so that appropriate information would be pulled from your Booking Form.
Step 5. Creating a Booking Form

We have moved to the stage on which a Booking Form should be created. Proceed to add a new Booking Form (learn more from the following tutorial).

For example, here’s what we’ve got:

Now, please be attentive, as we’re going to overview the new option!

With  JetBooking plugin you will find a brand-new field in your Booking Form, called Check-in/ check-out dates. It will enable an opportunity on the frontend to select a period for which a visitor would like to book the housing (will be demonstrated further).

Step 6. Booking Form Notification settings

Now we need to set up the Notification Settings in the Booking Form. There will be three main notifications. Let’s see, what they are:

  • Insert Post Type. Here you need to specify the “Orders” CPT and fulfill the Fields Map, which stands for pulling the meta fields created with the CPT we want the information to be added to.
  •  Apartment Booking Type. On this stage, in the Apartment ID field, you need to select your post_ID and set information in “Check-in/Check-out date” field. 

Attention! “Inserted_post_id” should be set in the field, in which ID of the corresponding order will be stored in your Booking Table.

  • Send Email Type. Here you need to create a confirmation email for your clients according to your needs.
Step 7. Booking Form in Elementor editor 

It’s time to get back to the Single page. Edit it with Elementor and drop the Booking Form widget to it.

Step 8. Booking process on the frontend

We’re pretty much done! Let’s go to the frontend of the Single page and try to book the housing. In the Booking Form, you will see how “Check-in/Check-out date” field works. Here your visitor is able to define the period of rent, by selecting the dates in the drop-down calendar.

Step 9. Checking the changes

After everything’s done and the form was submitted successfully, you’ll see your Booking Table in the database to be fulfilled with the values submitted by the client, and in your “Orders” CPT a new order has been placed.

Now you can manage this order as an administrator.

What about filters?

And the final phase is to add Date Range filter available within JetSmartFilters to provide your visitors with the opportunity to check before booking, whether the housing is available for rent for the period he or she needs it.

It’s very simple! Make sure you have JetSmartFilters installed and proceed to create a Date Range filter (here’s a step-by-step guide on how to do it).

ATTENTION! Please note that in the Query Variable field you need to input chekin_checkout key

Well, after your filter was embedded to your Archive page with the Listing Grid, you can try yourself to filter the period to check the availability of the properties displayed.

In case somebody has already booked a house for this period, it won’t be displayed in the selection results, which gives your client an opportunity to make a decision if another house satisfies his needs.

Our compact instruction is over! To learn a detailed one, please check the following tutorial.

Go ahead and explore the opportunities of JetBooking plugin Beta version and play around with its settings! As always we’re open to your feedback and your feature requests. A more detailed tutorial can be found here.

See ya!