Astro Booking Engine

Description

Astro Booking Engine adds a simple, intuitive and responsive hotel booking form to your WordPress site and connects it to the booking engine you already use. Visitors pick their dates and party size on your website and land on your booking engine with everything already filled in.

The form is independent from the provider. If you change booking engine, your website does not change: select the new provider, enter the settings it gives you, and the form on your pages keeps the same design, the same position and the same options. No redesign, no page edits.

Why use Astro Booking Engine

  • Ready in minutes, no custom development. Install, choose your provider, enter its data, add the form to a page. Done.
  • Free to change provider. Your layout and your pages stay as they are; only the provider settings change.
  • Yours to customize. Colors, fonts, borders, calendar theme and custom CSS from the Layout settings, plus per-block options in the editor.
  • Built for every guest. Responsive, follows the language of your site, with fields labelled for screen readers following the WCAG guidelines.

How it works

  1. Select your booking engine provider in the plugin settings.
  2. Enter the data your provider gives you (hotel ID, language, currency and so on).
  3. Add the form to your site with the Gutenberg block, the shortcode or the widget.

Display the form wherever you prefer

  • with the Astro Booking Engine Gutenberg block, with live preview in the editor and per-block customization: submit button label, form colors (with transparency), border radius, plus the standard alignment, spacing and background options;
  • with the shortcode [astro-booking-engine], anywhere in your content;
  • with the classic widget, in any widget area.

Astro Booking Engine is not a booking engine: it needs an active contract with one of the providers listed below.

Supported hotel booking engine providers, in alphabetical order:

New booking engine providers are welcome!
If your booking engine provider is not on the list, you can request its inclusion by sending an email to alian@alian.it with any documentation you may have.

The plugin interface is translated into Italian, Spanish, French and German. It is also compatible with translation plugins such as WPML and Loco Translate.

Source code and third-party libraries
The source code of the plugin is on GitHub: github.com/alianschiavoncini/astro-booking-engine.
The calendar of the modern style is flatpickr 4.6.13, released under the MIT license and included in its minified build: its full source code is at github.com/flatpickr/flatpickr. The themes of the classic calendar come from jQuery UI, also under the MIT license.

About the author
Astro Booking Engine is developed and maintained by Alian Schiavoncini (www.alian.it), a WordPress developer since 2005 and founder of AboutMyHotel, a hotel reputation and market intelligence platform. AboutMyHotel is a separate, commercial service by the same author and is not required to use this plugin.

External services

The plugin shows a booking form that takes the visitor to the online booking engine of the hotel. It uses one external service only: the booking engine provider selected in the plugin settings.

Nothing is sent while the page loads, and the plugin does not collect or store any data. When the visitor submits the form, the browser opens the provider’s booking engine and sends it the search entered in the form: arrival and departure dates, number of adults and children, children ages and pets when those fields are enabled, the promo code when entered, the language and currency of the page, and the hotel identifiers set in the plugin settings. From that point on, the terms and the privacy policy of the provider apply.

The providers and their policies:

Wordfence vendor verification key

gsphudo7by90lzwdlihyerqxbzj6jiln

Screenshots

Blocks

This plugin provides 1 block.

  • Astro Booking Engine Display the booking engine form of the configured provider.

Installation

  1. Upload the entire astro-booking-engine folder to the /wp-content/plugins/ directory.
  2. Activate the plugin through the Plugins screen (Plugins > Installed Plugins).

FAQ

How can I report a bug or suggest an improvement?

You can use the support forum on WordPress.org or write to alian@alian.it. Feature requests and bug reports are welcome.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“Astro Booking Engine” is open source software. The following people have contributed to this plugin.

Contributors

“Astro Booking Engine” has been translated into 1 locale. Thank you to the translators for their contributions.

Translate “Astro Booking Engine” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

2.5.0

  • Added: Beddy provider.
  • Added: ErmesHotels provider.
  • Fixed: with the modern style and more than one booking form on the same page, the first form opened the booking engine without the dates and the guests.
  • Compatibility: tested with WordPress 7.1.

2.4.0

  • Added: a modern form style, shown as a single card with one calendar for both dates and a guests panel with steppers, children ages and pets. The classic style stays the default on the sites that already use the plugin, and the modern one is the default for new installations.
  • Added: a notice on the plugin pages telling the sites that already use it that the modern style is available, with a button that opens the form style setting. It appears once and goes away as soon as it is dismissed or the style is changed.
  • Added: the hover background color of the modern style, among the layout settings, and the layout settings now drive the modern style too, so the colors already chosen come along with it.
  • Added: the density of the modern style, compact or roomy, with the larger touch targets recommended by the accessibility guidelines.
  • Added: the width of the modern style, fit to the content or full width, for the sites that use the form as a booking bar across the whole content column.
  • Added: the block preview in the editor shows the modern style too, instead of the classic form.
  • Added: the layout settings warn when the colors chosen do not reach the 4.5:1 contrast asked by WCAG AA, without preventing the choice.
  • Fixed: the per block layout overrides now reach the modern style as well, instead of applying only to the classic rules.
  • Fixed: with more than one booking form on the same page, the children ages of the second form were never shown, because the script read the number of children of the first form.
  • Fixed: more than one booking form on the same page produced duplicate element ids, so the labels of the second form pointed at the fields of the first one.
  • Compatibility: tested with WordPress 7.1.

2.3.0

  • Added: ResNexus provider, with adults, children and pets: the numbers of the capacity slots the property uses for the children and for the pets are settings. The property code can also be entered by pasting the whole booking engine address.
  • Added: ThinkReservations provider, with adults and promo code: the children are set on the booking engine, which splits them into age categories configured for every property. The property name can also be entered by pasting the whole booking engine address.
  • Added: Amadeus iHotelier (TravelClick) provider, with adults, children, discount code, currency and the choice of the language of the booking engine. The property code can also be entered by pasting the whole booking engine address.
  • Added: Cloudbeds provider, with adults, children, promo code, currency and the choice of the language of the booking engine. The booking engine address is entered as it is, also the regional one.
  • Added: D-EDGE provider, with adults, children and their ages and promotional code. Both generations of the booking engine are supported, told apart by the address, which is entered as it is.
  • Added: Guestline provider. The site and property codes can also be entered by pasting the whole booking engine address, including the old one.
  • Added: HotelNetSolutions (OnePageBooking) provider, with adults, children and their ages and booking code. The booking engine address is entered as it is.
  • Added: Journey provider. The property name can also be entered by pasting the whole booking engine address.
  • Added: Mirai provider, with adults, children and their ages, promotional code and the currency.
  • Added: Reservit provider, with adults, children and their ages and discount code. The two codes of the property can also be entered by pasting the whole booking engine address.
  • Added: Roiback provider, with adults, children and their ages and promotional code.
  • Added: Sabre SynXis provider, with the children ages. The hotel and chain codes can also be entered by pasting the whole booking engine address.
  • Added: SiteMinder provider, with adults, children and infants and promo code. The property name can also be entered by pasting the whole booking engine address.
  • Added: Witbooking provider, with adults, children and infants, promo code and the choice of the language of the booking engine. The booking engine address is entered as it is, also when it is on the domain of the property.
  • Added: Spanish, French and German translations, complete for the admin screens and the block editor panel.
  • Changed: the providers list of the plugin support page is now a table with the country of each company, and the providers list of this page shows the country next to each name.
  • Fixed: a double horizontal line between the last two sections of the RevPlus (WebHotelier) provider settings.
  • Compatibility: tested with WordPress 7.1.

2.2.0

  • Added: Booking Expert provider, with dates and coupon: the guests are chosen on the booking engine, whose guest types are numeric codes different for every property. The layout can also be entered by pasting the whole booking engine address.
  • Added: Mews provider. The Configuration ID can also be entered by pasting the whole booking engine address.
  • Added: Octorate provider. The codice can also be entered by pasting the whole booking engine address.
  • Added: RevPlus (WebHotelier) provider, with adults, children and infants, voucher and optional single hotel of a multi-hotel account. The property name can also be entered by pasting the whole booking engine address.
  • Added: Scidoo provider. The cod can also be entered by pasting the whole booking engine address.
  • Added: the confirmation message “Settings saved.” on the plugin settings pages, which were saving without telling it.
  • Compatibility: tested with WordPress 7.1.

2.1.0

  • Security: the plugin settings are now sanitized when saved and validated again when used, so that a user with access to the settings cannot inject scripts into the site pages through the Layout colors, sizes and custom CSS (relevant on multisite, where site administrators are not allowed to add unfiltered HTML).
  • Security: the Iperbooking form address is now escaped.
  • Security: direct access protection added to all the PHP files; the settings tab, the provider and the calendar theme are checked against the allowed values before being used in file paths and URLs; output escaping completed on the admin screens.
  • Added: BeGenius provider.
  • Fixed: the widget printed the theme’s widget markup as visible text instead of HTML.
  • Fixed: the Iperbooking form address was “Array” when the site language matched none of the configured languages, instead of the default language; PHP warnings when no treatment is configured.
  • Fixed: deleting the plugin now removes its settings and widgets from the database, also on multisite: the previous uninstall routine was never executed.
  • Fixed: “Remove all plugin settings” now also clears the object cache, so deleted settings are no longer read back on sites with a persistent object cache.
  • Changed: in the block-based widget editor only the Astro Booking Engine block is offered: the classic widget, which did the same, is hidden from the inserter as WordPress does for its own widgets replaced by blocks; widgets already added keep working.
  • Changed: the color fields of the Layout settings and of the block accept hex, rgb/rgba, hsl/hsla, CSS variables and named colors.
  • Compatibility: tested with WordPress 7.1.

2.0.0

  • Added: Astro Booking Engine Gutenberg block with live editor preview and per-block layout customization (submit button label, form colors with transparency, border radius), alongside the existing shortcode and widget.
  • Added: Blastness provider.
  • Added: Data Sistemi provider.
  • Added: WuBook provider.
  • Added: review request notice on the plugin settings screen, shown only to administrators after 30 days of use, with permanent dismiss and snooze options.
  • Added: “About the author” section in the readme and on the plugin Support page, with links to the author’s website and to AboutMyHotel, plus a FAQ entry on how to report bugs and suggest improvements.
  • Added: “Support” and “Author website” links in the plugin row on the Plugins screen.
  • Fixed: booking form accessibility: every field now has a unique id with its label programmatically associated, and the decorative spacer label above the submit button is hidden from assistive technologies (WCAG 1.3.1, 4.1.2).
  • Fixed: two Italian translations on the settings screen (“For installation details…” and “support page”) were never applied because of malformed entries in the translation file.
  • Changed: Italian translation updated with the new strings (plugin description, security check message, 5Stelle “Portal” field label).
  • Changed: milestone release, fully backwards compatible: existing settings, shortcode, widget and templates keep working unchanged.
  • Compatibility: tested with WordPress 7.1.

1.5.0

  • Added: Ericsoft provider.
  • Added: MyGuestCare provider.
  • Fixed: on the settings screen some saved values were displayed wrong after saving: the Simple booking currency and the default and maximum numbers of adults and children for Simple booking and Vertical booking.
  • Compatibility: tested with WordPress 7.1.

1.4.2

  • Compatibility: tested with WordPress 7.1.

1.4.1

  • Security: fixed a Cross-Site Request Forgery issue in the “Remove all plugin settings” function (CVE-2025-10308). The action was performed on a plain GET request without nonce validation, so an administrator could be tricked into deleting all plugin settings by following a forged link. The request is now validated with a nonce and an explicit capability check. Thanks to Nabil Irawan (Heroes Cyber Security) for the responsible disclosure.
  • Fixed: on the Settings screen the shortcode name was showing the literal <strong> tags instead of being displayed in bold.
  • Changed: the plugin author is now Alian Schiavoncini (https://www.alian.it) and the support address is alian@alian.it. The previous AstroThemes website and email address are no longer active.
  • Changed: the admin menu is now named “Astro Plugins” instead of “AstroThemes”.
  • Changed: the plugin version is now stored in the ASTRO_BE_VERSION constant instead of being read at runtime with get_plugin_data().
  • Changed: the jQuery UI calendar stylesheet is now enqueued with a version number, so browsers pick up changes after an update.
  • Compatibility: tested with WordPress 7.0.

1.4.0

  • Added: Wordefence vendor verification key.
  • Compatibility: tested with WordPress 6.8.3.

1.3.0

  • Security: added security checks to the code.
  • Compatibility: tested with WordPress 6.6.1.

1.2.0

  • Added: Passepartout provider.

1.1.1

  • Changed: the plugin description.

1.1.0

  • Added: 5Stelle provider.

1.0.2

  • Added: Italian translation.

1.0.1

  • Changed: the support link on the admin settings screen.

1.0.0

  • Initial version.