Skip to content
Our free WordPress themes are downloaded over 7 MILLION times. Get them now!

A hotel theme with a booking request form built in

Montana is a free block theme for hotels, lodges and mountain resorts. A full-screen photograph slider, offers, a video band, the restaurant, rooms with their nightly prices and facts, and the form a hotel’s site exists for: a room booking request with check-in and check-out dates that needs no plugin. Eight colour palettes, dark mode and full site editing throughout.

Montana home page: the header over a photograph of a lodge and its bridge reflected in a mountain lake, with the headline Montana Resort and the line A lakeside hotel below the peaks

Two versions of Montana

The same design, built two ways. Both are free.

Recommended for new sites

Block theme

This download. Everything is edited in WordPress’s own Site Editor, with no plugins: the sections are patterns, with eight colour palettes, a dark mode and the booking request form built in.

For sites built with Elementor

Elementor edition

The same design built for the Elementor page builder. It needs the free Elementor plugin and the Montana Companion plugin, which provides its hero, rooms, offers and video widgets. The source is free on GitHub.

Rooms two by two, with their prices

Four rooms edge to edge, each a photograph with its price from and its name, darkening towards the foot so the words read. Hover a room and the photograph eases in and a book now link slides into view.

Montana featured rooms: four room photographs two by two, a corner window over the water, a sitting room with a stone fireplace, a deck under a timber roof and an A-frame bedroom, each with its name and price per night

A rooms page with the facts guests ask for

Every room with its photograph, its nightly price from, its size, beds, how many it sleeps and what it looks at, a line about it and a button that goes straight to the booking request.

Montana rooms page: the Lake View Room and the Mountain Suite, each with a photograph, the price from per night, size, beds, guests, view and a Request This Room button

A booking request without a plugin

Check-in and check-out dates, guests, the room, name, email and a message, in the template’s white box over a photograph. The server checks the dates — check-in not before today, check-out at least a night later — and the request goes to the front desk by email, or to your reservation system with one filter. It says plainly that it is a request: nothing is booked or paid for.

Montana booking request: a white box over a darkened lakeside photograph with check-in and check-out dates, guests, room, name, email, a message and a Send Request button

Eight palettes, checked before release

Montana, the template’s own blue, then Pine, Glacier, Sunset, Heather and Brass, and two dark palettes, Midnight and Lodge. Each is measured against WCAG AA before the theme is built — text, links and button labels, in light mode and in dark — and a palette that fails is not written.

The Montana booking request section in eight colour palettes: Montana, Pine, Glacier, Sunset, Heather, Brass, Midnight and Lodge

Dark mode the guest controls

The switch in the header is the visitor’s, separate from the palette you chose. It follows the reader’s system setting until they decide for themselves.

Montana in dark mode: the Ongoing Offers section with three photographs, a balcony, a sauna hut and rowing boats on a mountain lake, on a near-black page

What you get

A site on the first click

Activate Montana on a new site and it builds five pages — Home, Rooms, About, Blog and Contact — with a menu to match. Every word on them is ordinary, editable content.

Room booking requests

Native date pickers for check-in and check-out, guests and room from a list, checked again on the server. Validated, protected by a nonce and a honeypot, and it works with JavaScript turned off.

Rooms with their facts

Four featured rooms with prices on the home page, and a rooms page with size, beds, guests and view for each, every one linked to the booking request.

A photograph slider that behaves

The hero and the about page turn their photographs with round arrows, pause when a visitor points at them, and stay still for anyone who asks for reduced motion.

Eight palettes, five type pairings

Every palette is measured against WCAG AA before the theme is built, including white words over the photographs, in light mode and in dark.

Dark mode

A switch for the visitor, separate from the palette you chose. It follows the reader’s system setting until they pick for themselves.

Contact and newsletter forms

A contact page with a map, and a newsletter sign-up in the footer and the sidebar, all without a plugin. Each form has its own filter to send submissions elsewhere.

Your form plugin, styled

Contact Form 7, WPForms, Gravity Forms, Fluent Forms, Forminator and Ninja Forms take on the theme’s colours and spacing.

Fonts on your own server

Raleway and Playfair Display ship with the theme, with Latin Extended, so no visitor’s browser is sent to a font service.

A journal, too

Trail notes, the kitchen’s seasons, news from the lake. Posts carry their date on a blue tab over the photograph, and archives, single posts with an author box, search and a 404 are all designed, with a sidebar of search, categories, recent posts, tags and the newsletter.

Montana blog: a post with a blue date tab over a photograph of walkers on a valley path, beside a sidebar with search, categories and recent posts

Questions

No. The booking request form, the contact form, the newsletter sign-up and dark mode are part of the theme, and so are the starter pages. WooCommerce is supported if you add it, and is not required.

No, and it says so on the page. It sends a request — dates, guests, room, name, email and a message — and the front desk replies with what is free and a price. Nothing is booked or charged until the guest confirms. If you need live availability and online payment, a booking plugin’s form can take its place on the Rooms page.

To the site’s admin email address, sent with WordPress’s own wp_mail(), with the number of nights worked out for you. If your host cannot send mail, any SMTP plugin fixes it. To send requests to a reservation system, a CRM or a webhook instead, the montana_booking_handlers filter takes them over (montana_contact_handlers and montana_newsletter_handlers do the same for the other two forms), and Montana sends nothing of its own.

The Rooms page is ordinary content: edit the names, prices and facts in the Site Editor. The list of rooms in the booking form comes from the montana_room_options filter, and the guest counts from montana_guest_options.

No. The five starter pages are built only on a site that has no pages of its own yet, and only once. Activating Montana over an existing site leaves your pages alone.

Eight palettes — Montana (the original blue), Pine, Glacier, Sunset, Heather, Brass, and the dark Midnight and Lodge — and five type pairings are one click each in the Site Editor under Styles. Each palette restyles every section.

So links and button labels stay readable. The template’s #009dff is 2.9:1 against white, below the 4.5:1 that WCAG AA asks for. It stays as the accent, and a deeper shade of the same blue carries the words.

Yes. Add add_filter( 'montana_enable_dark_mode', '__return_false' ); or add_filter( 'montana_enable_scroll_animations', '__return_false' ); to a child theme or a small plugin. With the animations off the sliders stop turning on their own; their arrows keep working.

The block theme is edited in WordPress’s own Site Editor and needs no plugins. The Elementor edition is the same design built for the Elementor page builder; it needs the free Elementor plugin and the Montana Companion plugin, and is available on GitHub. For a new site we recommend the block theme.

Yes. Every string is translatable and languages/montana.pot is included.

Yes, twice a day, because it is distributed outside the WordPress.org theme directory. It sends the theme, WordPress and PHP versions, the locale, whether the site is a multisite, and an identifier derived from the site’s address with the site’s own secret key, so it cannot be turned back into the address. No personal data and no site name. The montana_check_for_updates filter switches it off.

The details

Requires WordPress 6.6 or newer
PHP 7.4 or newer
Tested up to WordPress 7.1
Licence GNU General Public License v2 or later
Patterns 17 to insert (13 sections, 4 page layouts) plus the header and footer, and 12 the templates use
Templates 10, plus 3 template parts
Starter pages 5, built on activation, with a menu
Styles 8 colour palettes × 5 type pairings
Fonts Raleway and Playfair Display, self-hosted
Icons Tabler Icons (MIT), drawn in the palette’s colours
Forms Room booking request, contact and newsletter, no plugin needed
Form plugins Contact Form 7, WPForms, Gravity Forms, Fluent Forms, Forminator, Ninja Forms
Build step None — no npm, no SCSS
Back To Top

Get this WordPress theme

Confirm your email and we will send the download link. We will also let you know when we release a new free WordPress theme.

If you wish to withdraw your consent and stop hearing from us, simply click the unsubscribe link at the bottom of every email we send or contact us at [email protected]. We value and respect your personal data and privacy. To view our privacy policy, please visit our website. By submitting this form, you agree that we may process your information in accordance with these terms.