How to Build a Vacation Rental Website with Elementor
Last updated: May 31, 2026
An elementor vacation rental site is bookable when you pair the WPRentals theme (about $79 one-time on ThemeForest) with its bundled free companion plugin, the WpRentals Elementor Addon (listed as “WPRentals Elementor Widgets” in the theme’s plugin installer), and Elementor Free. No Elementor Pro required. WPRentals supplies page-level widgets (search form, grids, featured listing, availability calendar, booking form, map) plus WPRentals Studio, a no-code template builder that does the job Elementor Pro’s Theme Builder would normally do.
The booking engine (availability, iCal sync, Stripe and PayPal) is owned by the theme; Elementor only places and styles it. If you’re comfortable dragging widgets around, you can take one property template from blank canvas to fully assigned in under 40 minutes. The rest of this guide walks you through every step of the elementor vacation rental build.
Why build a vacation rental site on Elementor and WPRentals?
Per widely reported 2026 industry figures, Airbnb counts 5 million-plus hosts and 9 million-plus active listings, most of them individuals. That’s a large pool of hosts who could run their own direct-booking sites instead of OTA fees. The same data notes that in 2024, direct booking sites accounted for nearly 34% of bookings, second only to Airbnb at 46%, and the share keeps rising.
So why not just grab an Elementor template kit? Kits like Veela and Villahoya on Envato give you layouts, not a booking system: no availability calendar, no iCal sync, no Stripe checkout, no way to take a reservation.
That’s where the WPRentals vacation rental theme comes in, pairing real booking machinery with Elementor’s no-code builder. As Ben Pines, Elementor’s head of content, puts it, the goal is to “empower as many web creators as possible, so building websites will be a frictionless, worthwhile, thriving profession.” Pines also notes that over 30% of Elementor users first meet WordPress through the platform, so you don’t need to be a developer to run a direct booking site for hosts.
The two-layer model: page widgets vs Studio templates
WPRentals splits the work into two layers, and once you see the split, everything else clicks.
Layer 1 is page-level widgets that drop onto ordinary Elementor pages: Search Form Builder, WP Rentals Grids, WpRentals Featured Listing, Recent Items Slider, WP Rentals Map with Listings, Availability Calendar, Booking Form, Call to Action, and Contact Form Builder.
Layer 2 is WPRentals Studio templates that control the repeated pages: every single property page, every category archive. Studio launched November 2025 in theme version 3.16.0 (WPRentals build guide) and does the Theme Builder job, all in Elementor Free.
The full stack: WPRentals (about $79 one-time, rated 4.84/5 from more than 600 reviews and over 15,600 sales on ThemeForest), the bundled WpRentals Elementor Addon, plus Elementor Free 4.x.
What you need before you start
Run this quick 2026 compatibility check first.
- Elementor: current is 4.x (Free). The changelog shows v4.1.1 dated 2026-05-27, with v4.1.0 raising the minimum WordPress version to 6.8 and v4.0.8 updating WordPress compatibility to 7.0 (Elementor changelog on GitHub). WPRentals’ guide says “Elementor Free 4.0 or newer is all you need.”
- Server: PHP 7.4 minimum, PHP 8.1 or newer recommended. WordPress is supported up to 7.0.
- Addon minimum: confirm the exact minimum Elementor version in the plugin header in your WordPress admin. Treat “current Elementor Free (4.x)” as the safe target.
Note: keep a backup before you install or update anything.
How to set up an Elementor vacation rental site with WPRentals
Here’s the whole build as one checklist. How to build a vacation rental website with Elementor:
- Buy and install the WPRentals theme from ThemeForest, then activate it.
- Install the bundled WpRentals Elementor Addon from Appearance » Install Plugins (it is NOT on WordPress.org).
- Install Elementor Free from WordPress.org.
- Set up your property taxonomies (Categories, Types, City, Neighborhood/Area, Features & Amenities, Property Status).
- Add your first property listing.
- Build the homepage with the Search Form Builder, WP Rentals Grids, and Featured Listing widgets.
- Build the single property template in WPRentals Studio.
- Configure the booking flow (Stripe/PayPal plus iCal sync) in Theme Options.
- Run a test booking, then publish.
The install trips up more people than anything else. After activating WPRentals, head to Appearance » Install Plugins, where the WpRentals Elementor Addon sits bundled with the theme. The common mistake: searching WordPress.org, not finding it, and assuming it doesn’t exist. You install these Elementor widgets for WPRentals right from that screen.
Then install Elementor Free from WordPress.org. WPBakery is also bundled, so pick one builder per page. A page opened in Elementor can’t be flipped to WPBakery or Gutenberg later without a rebuild.
Setting up taxonomies and your first listing
Before the search form has anything to filter, you need data. WPRentals organizes property listings with six taxonomies under the “Listings, Bookings & More” menu:
- Categories
- Types
- City
- Neighborhood (Area)
- Features & Amenities
- Property Status
Fill these in first, then add your first property listing and assign it to the right terms. Your search fields map to these taxonomies through compare rules, so get the structure right.
How does the Search Form Builder widget work?
Drag the Search Form Builder onto an Elementor page so guests can filter listings by location, dates, and guests. The Content tab sets the fields; the Style tab sets the appearance.
The official doc puts it plainly: “The Elementor Search Form Builder applies only to the page where the widget is added. Other pages continue to use the global search form configured in WPRentals Options » Search » Advanced Search Form” (Search Form Builder doc). It is page-specific; your sitewide default lives in Theme Options.
It works as a hero, sidebar, or sticky search. The Half Map search runs over AJAX without a page reload and needs a Google Maps API key. The widget behaves like Hero Media Search Types 3 through 5 (which support custom fields); Types 1 and 2 are hardcoded.
Each field must use the correct compare rule, or your guest gets an empty results page. The full matrix from the docs:
| Search field | Required compare rule |
|---|---|
| Location | Like |
| Check-in | Date Greater |
| Check-out | Date Smaller |
| Guests | Greater |
| Price | Greater |
| Listing City / Property Area / Listing Main Category / Second Category / Property Category / Property Type | Like |
| Listing County / State / Country / Zip | Like |
| Bedrooms / Bathrooms / Rooms / Size | Greater (or Equal / Smaller) |
| Beds and Baths Component | Equal |
| Features and Amenities | Feature field settings |
| Custom field, text/dropdown | Like |
| Custom field, number | Greater / Equal / Smaller |
| Custom field, date | Date Greater / Date Smaller |
The number-one search failure is a wrong compare rule returning empty results. If a filter shows nothing when matching properties exist, check this table.
Listings display and card design
This is where a lot of guides get it wrong. There is no standalone property-card widget in WPRentals, so there’s nothing to drag in.
Listing-card appearance is global: set it under Theme Options » Listing Card Design » Listing Unit Type (Type 1 through 4) and your cards update everywhere. The one exception is the WpRentals Featured Listing widget, which overrides the style per widget (Type 1, 2, or 3). For the image slider, toggle Listing Card Image Settings » Use Slider in Listing Unit.
The second thing people misread: WP Rentals Grids shows taxonomy terms, not individual listings. As the Grids doc states, “It does not display individual listings.” It surfaces Cities, Areas, Property Types, and Property Categories. To show actual properties, use the WpRentals Featured Listing, Recent Items Slider, or WP Rentals Map with Listings widget.
Binding dynamic data with WPRentals Studio
If you’ve used Elementor Pro, you’re probably bracing for Dynamic Tags. There are none here. The WPRentals build guide explains why: “Studio widgets are purpose-built and already bound to the current property or term context. You drop ‘Property Page Price Section’ onto the template and it pulls the price from whichever property the visitor is viewing. The widget is the binding.”
It all runs on Elementor Free: Studio does the Theme Builder job, its context-bound widgets do the Dynamic Tags job. To build a single property template, start a Single Property Page template in Studio and stack:
- Property Page Featured Image Header
- Property Page Overview Section
- Property Page Booking Form (pin this to the right column)
- Property Page Availability Section
- Property Page Map Section
Each one auto-fills with the viewed property’s data. The final move matters: Publish, refresh, then open Display Options in the Studio template’s settings panel and assign the template to “All Single Property Pages.” Skip it and your template won’t show up.
One last check: on mobile the booking box stacks below the content, so switch to Elementor’s responsive view and confirm it lands where a guest will see it. The appendix lists every Single Property widget.
Wiring up the booking flow
Keep the boundary in mind: Elementor controls layout and placement; WPRentals owns availability, iCal sync, pricing rules, and Stripe/PayPal checkout. Elementor doesn’t build the booking system; it places it.
The Availability Calendar widget needs the property’s Listing ID (its post ID), then shows that property’s open and blocked dates (Availability Calendar doc). The Booking Form reads its config from Theme Options » Booking Configuration: daily or hourly mode, guest field, and date format.
For OTA sync, WPRentals gives each property an iCal export URL. Add it to Airbnb, Vrbo, Booking.com, or HomeAway, and a booking on one platform blocks those dates on the others, preventing double-bookings.
Payments live in the same place: configure Stripe or PayPal under Theme Options » Booking Configuration. The booking engine is theme machinery, not a widget.
Do you need Elementor Pro?
No. Everything in this build runs on Elementor Free, because WPRentals backfills each Pro feature you would otherwise reach for.
| What Elementor Pro adds | What replaces it in WPRentals (Free) |
|---|---|
| Theme Builder | WPRentals Studio |
| Pro Dynamic Tags | Studio context-bound section widgets (“the widget is the binding”) |
| Loop Grid / Posts widget | WP Rentals Grids (terms) + WpRentals Featured Listing / Recent Items Slider / Map with Listings (listings) |
| Custom Query Builder | Search Form Builder + Theme Options search config |
One honest caveat: the generic Elementor Loop Grid really is a Pro feature (Loop Grid help). Elementor Free doesn’t do Loop Grids on its own; WPRentals’ widgets fill that gap. The cost math: about $79 one-time plus hosting, no Elementor subscription. If you’re still comparing themes, see the best vacation rental WordPress themes 2026 roundup.
A worked example: a three-property cabin rental site
Say you manage three cabins, Pinewood Cabin, Lakefront Retreat, and Hilltop Hideaway, all under City “Blue Ridge” and Category “Cabin.”
The homepage gets a Search Form Builder hero (check-in, check-out, guests, City), WP Rentals Grids filtered to Cabin, and a WpRentals Featured Listing (Type 2) for Lakefront Retreat. One Studio build (Featured Image Header, Overview, Booking Form pinned right, Availability, Map) becomes the single property template, assigned via Display Options to “All Single Property Pages” for all three cabins.
For booking, set up Stripe in Theme Options » Booking Configuration, add each property’s iCal URL into Airbnb, and run a test booking. This elementor vacation rental build runs under 40 minutes.
Common gotchas and how to fix them
Six things go wrong often enough to know about up front.
- Empty search results: almost always a wrong compare rule. Check the field against the compare-rule table above.
- Wrong card image: wrong control. The look is global (Theme Options » Listing Card Design); the slider lives at Listing Card Image Settings » Use Slider in Listing Unit. Fix it and clear your cache.
- Studio template not applying: you skipped the assignment. Publish, refresh, open Display Options, and assign it.
- Blank Half Map: missing Google Maps API key. Add it and the map renders.
- Builder conflict: one builder per page. A page opened in Elementor can’t switch to WPBakery or Gutenberg without a rebuild (build guide).
- Mobile booking box: the right-column box stacks on mobile. Check the responsive placement so guests can find it.
One discipline worth keeping: major WordPress and Elementor updates have broken WPRentals before. The documented WordPress 6.7 / Elementor 3.26 incident threw a load-textdomain-just-in-time notice and a typography-related fatal error until the theme and plugins were updated (WPRentals compatibility doc). The practice: back up, then update in order: theme, then WpRentals Core, then the WpRentals Elementor Add-on. If a new Elementor release misbehaves, revert via Elementor » Tools » Version Control.
Key Takeaways
- Every step of building a bookable vacation rental site with WPRentals runs on Elementor Free, so Elementor Pro is not required.
- WPRentals has no standalone property-card widget; listing-card design is global in Theme Options under Listing Unit Type 1 through 4.
- WPRentals Studio widgets are pre-bound to the property in scope, so there are no Elementor Dynamic Tags to wire up.
- WP Rentals Grids displays taxonomy terms, not individual listings; use Featured Listing or Map with Listings for properties.
- WPRentals costs about $79 one-time on ThemeForest, and the booking engine, iCal sync, and Stripe checkout are theme-owned, not Elementor widgets.
Frequently Asked Questions
Do you need Elementor Pro to build a vacation rental site?
No. WPRentals Studio replaces Elementor Pro’s Theme Builder, its context-bound widgets replace Dynamic Tags, and its grid and featured-listing widgets replace the Loop Grid. Everything runs on Elementor Free 4.x. The only paid piece is the theme itself, at about $79 one-time, plus hosting. There’s no Elementor subscription in the workflow.
What is the WPRentals Elementor widgets plugin?
It’s the WpRentals Elementor Addon, a free companion plugin bundled with the theme rather than sold on WordPress.org. You install it from Appearance » Install Plugins. It adds page-level rental widgets (search form, grids, featured listing, availability calendar, booking form, map) and the Studio template builder to Elementor Free.
Where do I install the Elementor widgets for WPRentals?
From the WordPress admin, go to Appearance » Install Plugins after activating the WPRentals theme. The addon is bundled with the theme and listed right there. It is not in the WordPress.org plugin directory, so searching there won’t turn it up. That single detail trips up most first-time builders.
Does Elementor handle the booking and payments?
No. Elementor only places and styles the booking form. The WPRentals theme owns availability, iCal sync with Airbnb, Vrbo, and Booking.com, pricing rules, and Stripe or PayPal checkout. You configure all of that under Theme Options » Booking Configuration, not inside the Elementor editor. Elementor controls layout; the theme runs the booking logic.
Can I show individual listings with the WP Rentals Grids widget?
No. In WPRentals, the WP Rentals Grids widget shows taxonomy terms such as cities, categories, and property types, not individual properties. To display actual listings, use the Featured Listing, the Recent Items Slider, or the Map with Listings widget instead.
Appendix: verified WPRentals widget reference
The verified widget sets from the official WPRentals docs. Studio also ships Category/Term, Header/Footer, Single Owner, and Single Blog Post sets, listed in the WPRentals Studio doc.
Table A: Page-level widgets
| Widget | What it does |
|---|---|
| Search Form Builder | Page-specific search/filter form |
| WP Rentals Grids | Displays taxonomy terms in a grid |
| WpRentals Featured Listing | Spotlights one property (card Type 1 to 3) |
| Recent Items Slider | Slider of recent listings |
| WP Rentals Map with Listings | Map view of properties |
| Availability Calendar | Calendar for a property (needs Listing ID) |
| Booking Form | Page-level booking form |
| Call to Action | CTA block |
| Contact Form Builder | Contact form |
Table B: Studio template types
| Template type |
|---|
| Header / Before Header / After Header |
| Footer / Before Footer / After Footer |
| Single Property Page |
| Single Owner |
| Single Post |
| Category Template |
Table C: Studio Single Property widgets
| Widget |
|---|
| Property Breadcrumbs |
| Property Title |
| Property Page Status |
| Property Featured Image |
| Property Page Header Section |
| Property Page Overview Section |
| Property Page Description Section |
| Property Page Address Section |
| Property Page Details Section |
| Property Page Features Section |
| Property Page Sleeping Arrangements Section |
| Property Page Terms and Conditions Section |
| Property Page Availability Section |
| Property Page Map Section |
| Property Page Video Section |
| Property Page Virtual Tour Section |
| Property Page Yelp Section |
| Property Page Owner Section |
| Property Page Reviews Section |
| Property Page Similar Listings Section |
| Property Page Booking Form |
| Property Page Featured Image Header |
| Property Classic Slider |
| Property Masonry Gallery |
| Property Masonry Gallery v2 |
| Property Multi Image Slider |
| Property Page Add to Favorites |
| Property Page Contact Owner Section |
| Owner Detail |
| Property Page Price Section |
| Property Single Detail |
That’s the full WPRentals build: a bookable, OTA-syncing elementor vacation rental site on Elementor Free for about $79, no Pro license needed. Before you go live, run one real test booking from search through checkout to confirm the money path.



