-
- Tracking Form Lead Source
- Show a Form Only to Logged-In Users
- How to Increment a Count on Each Form Submission
- Adding an “Other” Option
- Adding a Unique ID to Each Form Submission
- Show or Hide Form Fields Based on User Joomla User Group
- Disabling Browser Autocomplete for Form Fields
- Scroll the Page to the Top When a Long Form is Submitted
- Display Submissions Count for a Specific Form
- Populate Drop Down, Radio Buttons or Checkboxes with a CSV File
- Automatically Delete Submissions Older Than X Days
- Silently POST Submitted Data to Any API or URL
- Automatically Save Each Submission to a JSON file
- Create a Custom Login Form
- Auto-Populate Fields with Article Data
- Add a placeholder text to a Dropdown field
- Create Multilingual Forms in Joomla
- Redirect User to a URL After Form Submission
- Importing and Exporting Forms
- Exporting Form Submissions
- Display Convert Forms in a popup
-
- How to Create a Quiz Form
- Show Confirmation Popup After Submission
- Using the Conditional Content Shortcode in Convert Forms
- Copy Value From One Field to Another
- Submission Tasks
- Exporting Form Submissions with a Webhook URL
- Conditional Fields
- PDF Generator
- Input Masking
- Calculations
- Populate Fields Using Query String
- Smart Tags
-
- Minimum Time to Submit
- Restrict Form Submissions Based on IP
- Enforcing a Custom Password Policy in Convert Forms
- Add Cloudflare Turnstile to your Joomla Form
- Implement the Iubenda Consent Database in Joomla with Convert Forms
- Add Custom Validations to Fields and Forms
- Add Math Captcha to your Form
- Prevent a Field From Saving in the Database
- Add hCaptcha to your Form
- Enable Double Opt-in
- Allow Form Submissions in Specific Date Range
- Ensure a Unique Value is Entered Into a Field
- Block Form Submissions Containing Profanity (Bad Words)
- Block Email Addresses or Email Domains
- Honeypot
- Setting Up Google reCAPTCHA
- Create GDPR Compliant Forms
Smart Tags
Insert relevant information into your Joomla forms, much like how a programmer uses variables when writing code. Capture current URL, referrer URL or even the visitor's IP address in form fields.
Smart Tags are dynamic placeholders written inside curly braces, e.g. {date}
or {field.email}
that lets you insert real data into your forms, emails, and notifications. With them, you can create versatile notifications and build more advanced Joomla contact forms. Each time a submission is captured, Smart Tags allow you to automatically include details from the submission, the form, the visitor, and even site-wide information.
They can be used after a form is submitted, as well as during form rendering, for example, to pre-populate a field with a value or to display dynamic content inside an HTML field.
You can use them in many places, including:
- Email Notifications: Insert submission details into subject lines or message bodies.
- Form Field Settings: Set default values, placeholders, or hidden field values dynamically.
- Tasks & Integrations: Pass data to services like MailChimp, HubSpot, Emails, or Webhooks.
- Success Messages: Personalize the confirmation message the user sees after submitting a form.
For an overview of all site-wide options, visit our common guide for Smart Tags.
Use Cases
Smart Tags unlock many practical workflows. Here are some examples with links to relevant guides:
- Auto-Populate Form Fields Using Query String: Capture URL parameters and insert them into form fields with
{querystring.NAME}
. - Adding a Unique ID to Each Form Submission: Use
{randomid}
to generate a unique reference number for every submission. - Display Submission Count for a Specific Form: Output the total number of submissions for a form with
{convertforms ID submissions_total}
. - Create Multilingual Forms in Joomla: Dynamically output the current language with
{language.STRING}
to build multilingual forms.
Submission Smart Tags
These tags provide details about the submission event, including when it occurred, which form was used, who submitted it, and the number of existing submissions. Great for tracking, personalization, or distinguishing between entries.
{submission.id}
This smart tag provides the ID of the submission that your form just captured. Every submission is assigned this unique incremental ID, which can be found through your Submissions screen in Convert Forms.
{submission.dateCreated}
Outputs the date the submission was created using Joomla's DATE_FORMAT_LC5
date format.
{submission.dateModified}
Outputs the date the submission was last modified using Joomla's DATE_FORMAT_LC5
date format.
{submission.form_id}
This smart tag provides the ID of the Convert Form that was just used.
{submission.visitor_id}
This smart tag provides the visitor's ID. The visitor ID is basically the cookie ID, which is generally used to track each visitor's movements.
{submissions.count}
This smart tag provides the number of submissions for this form.
Field Smart Tags
Use these tags whenever you want to pull in the user-provided input itself—whether the plain value, the label, a formatted (HTML) version, or even the raw content. Perfect for putting submission data into emails, messages, or hidden form fields.
Output Field Value
Use this tag when you need to display the value exactly as the user submitted it.
{field.NAME}
Where NAME
is the field name as set in the field settings.
For instance, if you have a field named Email, and the user submits [email protected]
using {field.email}
will output [email protected]
Important: By default, values are escaped for security. HTML tags are converted to entities.
For instance, if you accept user-generated content with a Rich Text Editor, and the user submits the following:
<strong>Hello</strong>
Using {field.NAME}
will output:
<strong>Hello</strong>
If you want to output the raw value without escaping, see Output Field Raw Value below.
Output Field Label
Use this tag when you need to output a field’s label, so you don’t have to retype it manually.
{field.NAME.label_}
Note: The trailing underscore _
is required.
Output Field HTML Version
Some fields provide an HTML-friendly version of their value. Useful when you want clickable links or formatted output.
{field.NAME.html}
Supported fields include:
- Email → Clickable mailto link (
<a href="mailto:...">
) - Phone → Clickable tel link (
<a href="tel:...">
) - URL → Clickable hyperlink (
<a href="/...">
) - File Uploads → List of download links for uploaded files
- Password → Replaced with asterisks for privacy
- Signature → Renders as an
<img>
tag with the actual signature
Output Field Raw Value
Use this tag if you want the raw submitted value without any modifications. For example, to preserve HTML tags exactly as entered by the user.
{field.NAME.raw}
Output Dropdown and Radio Button Data
Use these tags with Dropdown or Radio Button fields when you need the selected option’s label or its calculated value.
To output the label of the selected option, use:
{field.NAME.selected.label}
Note that if you're populating the field's choices using PHP, the above Smart Tag will always output the value of the selected option instead of the label. This happens because the PHP script that populates the choices runs only during form rendering.
If you use Calculations, to output the calculation value of the selected option, use:
{field.NAME.selected.calcvalue}
{all_fields}
This Smart Tag outputs all the submitted information from your form fields in the following HTML layout:
<div><strong>Name</strong>: John Doe</div>
<div><strong>Email Address</strong>: [email protected]</div>
<div><strong>Comments</strong>: This is a test message</div>
Because of this it can be used in the Email Notifications, Thank you Message or even in the PDF Form Submissions addon to get a complete picture of all the fields which were filled out by the particular submission.
This Smart Tag supports the following options to customize it further. Let's see them one by one:
--hideLabels
Use this option if you don't want to include the field labels in the output.
Syntax:
{all_fields --hideLabels}
--excludeEmpty
Your form may include optional fields which is very likely to not have a value. Use this option to exclude those fields from the output.
Syntax
{all_fields --excludeEmpty}
--excludeFields
By default, all fields will be included in the output. Use this option to exclude certain fields by their name separated by a comma. For instance, the example below will exclude text1 and dropdown2 fields from the output.
Syntax
{all_fields --excludeFields=text1,dropdown2}
--excludeTypes
By default, all fields will be included in the output. Use this option to exclude certain fields by their type separated by a comma. For instance, the example below will exclude all Hidden fields from the ouput.
Syntax
{all_fields --excludeTypes=hidden}
--excludeHiddenByLogic
If you’re using conditional fields in your form and want to prevent fields hidden by this logic from being included in the output, use this option. It ensures that only the fields visible to the user at the time of submission are included..
Syntax
{all_fields --excludeHiddenByLogic}
Combining options
You can also combine multiple options in the same shortcode. For instance, the example below will output only the fields that have a value and at the same time will exclude all Hidden fields.
{all_fields --excludeEmpty --excludeTypes=hidden}
Global Smart Tags
These tags pull in information that isn’t tied to a specific form or submission — things like visitor data, site pages, user accounts, and the environment. They let you add context from outside what the user submits: where they are, what page they’re on, their IP, what user account they’re logged in with, etc. Because they apply everywhere (not just within Convert Forms), they’re especially useful when you want to personalize content, track analytics, or enrich your notifications.
For a full list of what’s available, see the Global Smart Tags documentation guide. 
How to use Page Smart Tags
If you want to use these Smart Tags in an Email Notification you'll have to follow the steps listed below:
1. Add a hidden field in your Form like in the screenshot below.
2. Inside your Email Notification use the field Smart Tag like in the screenshot below.