How to Translate Booking Forms, Email Templates, and Settings in Booking Calendar
Important for Booking Calendar 10.15.6 or newer:
If you are using the latest Booking Calendar version, you no longer need to use language shortcodes inside the same booking form.
Instead, for booking forms, you can create separate custom booking forms in the required languages and use the correct booking form on the corresponding language page.
Important:
This recommendation applies only to booking forms.
For email templates and other translatable text options in the Booking Calendar settings, you still need to use the [lang=LOCALE] shortcode method.
Recommended Method for Booking Forms in Booking Calendar 10.15.6 or Newer
The easiest way to configure booking forms in different languages is to create a separate custom booking form for each language.
- Create one custom booking form in the first language, for example English.
- Create another custom booking form in the second language, for example French, Spanish, German, or any other language.
- Open the page in the required language.
- Insert the booking shortcode with the corresponding booking form.
For example, use the English booking form on the English page, and use the French booking form on the French page.
This method is simpler, easier to manage, and avoids the need to configure multiple language sections inside the same booking form.
However, this method is only for the booking form layout and form field labels.
For email templates, search settings, confirmation messages, and other text options in the Booking Calendar settings, use the language shortcode method described below.
Using Language Shortcodes for Emails and Other Settings
Paid versions of Booking Calendar support multilingual configuration for email templates and other text options in the settings.
The active language depends on the current website locale.
Booking Calendar supports multilingual plugins such as WPML and Polylang, which can dynamically change the website locale.
When the locale changes, Booking Calendar can show the corresponding translated text section.
Language Shortcode Format
Use the following shortcode to start a translation section for a specific language:
[lang=LOCALE]
Replace LOCALE with the locale code of the required language.
For example:
fr_FRfor Frenchde_DEfor Germanes_ESfor Spanishit_ITfor Italian
Important Note About the Default Language
English is the default language in Booking Calendar.
You should start the email template or text option with the English version first, without adding a [lang=...] shortcode at the beginning.
After the default English section, you can add additional language sections separated by the [lang=LOCALE] shortcode.
You can configure more than two language sections if needed.
Simple Example
Example of an English and French translation of the “Thank you” message:
Thank you for your booking.
[lang=fr_FR]
Je vous remercie de votre réservation.
Example of a Multilingual Email Template
You can configure multilingual email templates at:
Booking Calendar > Settings > Emails
For example:
Hello,
Thank you for your booking.
[lang=fr_FR]
Bonjour,
Merci pour votre réservation.
Alternative Method for Booking Forms: Using Language Shortcodes
In paid versions of Booking Calendar, it is also possible to use language shortcodes inside the same booking form.
However, if you are using Booking Calendar 10.15.6 or newer, we recommend creating separate custom booking forms for each language instead.
This older method can still be useful if you prefer to keep all language versions inside one booking form configuration.
Example of a booking form configured in English and French:
[calendar]
<p>First Name (required): [text* name]</p>
<p>Last Name (required): [text* secondname]</p>
<p>Email (required): [email* email]</p>
<p>Visitors: [selectbox visitors "1" "2" "3" "4"]</p>
<p>Details: [textarea details]</p>
<p>[submit "Send"]</p>
[lang=fr_FR]
[calendar]
<p>Prénom (obligatoire): [text* name]</p>
<p>Nom (obligatoire): [text* secondname]</p>
<p>Email (obligatoire): [email* email]</p>
<p>Visiteurs: [selectbox visitors "1" "2" "3" "4"]</p>
<p>Détails: [textarea details]</p>
<p>[submit "Envoyer"]</p>
Important:
When translating the booking form, keep the same form field names in all language sections.
For example, if the English form uses [text* name], the translated form should also use [text* name].
Only the visible labels and button text should be translated.
Translating Other Text Options
You can use the same language shortcode method for other text options in the Booking Calendar settings, including search form text and other configurable messages.
For example, multilingual configuration can be used at:
- Booking Calendar > Settings > Emails
- Booking Calendar > Settings > Search
- Other text-based options in the Booking Calendar settings
Summary
For Booking Calendar 10.15.6 or newer, the recommended solution for booking forms is to create separate custom booking forms for each language and use the correct form on the corresponding language page.
For email templates and other translatable settings, continue using language shortcodes such as [lang=fr_FR], [lang=de_DE], or [lang=es_ES].
> Settings > Search page, etc..