Form Reform UTM

Form Reform UTM records UTM tags and makes them available to Form Reform and Conditional Redirect.

You don't need Form Reform to use this addon!
It can also be used with Conditional Redirect.

You may already be familiar with UTM tags in your campaign tracking and Google Analytics workflow. Form Reform UTM tracks incoming tags in a Concrete CMS cookie or session, then makes those tag values available to Form Reform and Conditional Redirect.

You can now use data value placeholders such as {{utm:source}} in your Form Reform form handlers and in your Conditional Redirect page attributes.

If you use a scheme other than UTM, never fear, the incoming parameters mapped are entirely configurable.

Demonstration

To see Form Reform UTM in action, follow the steps at 

Capturing incoming UTM tags

The default settings for Form Reform UTM will capture the UTM tags:

  • utm_source
  • utm_medium
  • utm_campaign
  • utm_content
  • utm_term

Tags can be captured from GET query parameters and from POST data.

Tag values are then made available as {{data_values}} to both Form Reform and Conditional Redirect with category and keys like {{utm:campaign}}.

Use-cases

Form Reform

  1. Record incoming UTM tags with submitted Form Data.
  2. Adjust response messages or response emails depending on received UTM tags.

Conditional Redirect

  1. Show campaign specific pages depending on received UTM tags.
  2. A/B testing.

Configuration

Form Reform UTM is enabled by installation on your site. It is disabled by uninstalling. 

The tags captured and the way these tags are recorded is fully configurable through the dashboard page at Dashboard > System & Settings > SEO & Statistics > UTM Configuration

The default settings will be good for most uses of UTM. If your campaigns are using fewer tags, you may want to reduce Minimum tags to qualify to match your usage.

For schemes other than UTM, you can specify alternative tags to catch and how they are mapped into {{data_values}} for use by Form Reform and Conditional Redirect

Incoming tags are temporarily stored in either the visitor's session or in a cookie. Form Reform UTM offers two ways of storing tags to a session, either directly or through the core session interface. If you choose to use a cookie, you can adjust the cookie expiry time.

GDPR Considerations

Depending on where you are located and where your visitors are located, the use of UTM tags to track campaigns may be subject to GDPR.

  1. You may need to notify visitors that you are recording UTM tags in addition to notification of any Google Analytics notification.
     
  2. Because Form Reform UTM is installed, this site c5Magic .co.uk will record any incoming utm_test tags in your session data. There are no tracked campaigns linking to this site, so such tracking is meaningless save for demonstrating how Form Reform UTM works.

Demonstration

To see Form Reform UTM in action, follow the steps at Example - Tracking UTM tags.

Form Reform UTM

jl_form_reform_utm - v9.0.1

Not just Form Reform and not just UTM! Capture and hold incoming UTM (or other) tags and make the tag values available to Form Reform and/or Conditional Redirect as {{place_holders}}. You don't need Form Reform to use this.

ConcreteCMS Marketplace v9.0.1

Single Pages
  • UTM configuration /dashboard/​system/​form_reform/​utm Redirects to UTM Configuration in SEO settings.
  • UTM configuration /dashboard/​system/​seo/​utm Capture and hold incoming UTM (or other) tags and make the tag values available to Form Reform as {{place_holders}}. Also integrates with Conditional Redirect. You don't need Form Reform to use this!

Form Reform

jl_form_reform - v9.3.12 - resources v9.3.3*

Reform the way forms are built. Build a form out of blocks. Take control of how form submissions are processed and how the submitted data is stored. Easy to extend. Easy to reconfigure. Tangible data. Easy to add your own integrations.

ConcreteCMS Marketplace v9.3.12

Block Types Single Pages
  • Form Reform /dashboard/​system/​form_reform Reform the way forms are built. Build a form out of blocks. Take control of how form submissions are processed and how the submitted data is stored. Easy to extend. Easy to reconfigure. Tangible data. Easy to add your own integrations.
  • Form Handler Plugins /dashboard/​system/​form_reform/​plugin_list Plugins for Form Handlers.
  • Form Reform Blocks /dashboard/​system/​form_reform/​form_reform_blocks Blocks for Form Reform.
  • Form Reform Global Settings /dashboard/​system/​form_reform/​global_settings Edit global settings and defaults for Form Reform Submission.
  • Form Reform /dashboard/​reports/​form_reform Reform the way forms are built. Build a form out of blocks. Take control of how form submissions are processed and how the submitted data is stored. Easy to extend. Easy to reconfigure. Tangible data. Easy to add your own integrations.
  • Form Submissions /dashboard/​reports/​form_reform/​form_reform_default Default storage for Form Reform submissions.
  • Advanced Configuration /dashboard/​system/​form_reform/​advanced_config Advanced Configuration for Form Reform including adapting styles for non-Bootstrap 5 themes.
Form Handler Plugins
  • Address Geocode
  • Clear Data Category
  • Clear Errors
  • Clear Quarantine Files
  • Comment
  • Condition Else
  • Condition Else If
  • Condition End
  • Condition If
  • End
  • Extend Form Data
  • Extend From List
  • Extend From Table
  • Extend With Text Item
  • Fail
  • Fire Event
  • Import Quarantine Files
  • Iterate Data
  • Iterate Data End
  • Iterate Repeatable Group
  • Iterate Repeatable Group End
  • Log Errors
  • Log Handler Results
  • Log Pipeline
  • Log Submission
  • Log Submission Data
  • Magic Tabs Jump
  • Merge From Cookie Store
  • Merge From Default Store
  • Merge From Session Store
  • Message
  • Next Form State
  • None
  • On Error
  • On Success
  • Query Default Store
  • Redirect
  • Save to CSV
  • Save to Cookie
  • Save to Default
  • Save to File
  • Save to Session
  • Send Email
  • Set Error
  • Set Error Conditional
  • Sort Form Data
  • Spam Detect
  • Transform Error
  • Validate Input Fields
  • Wait

Form Reform Display

jl_form_reform_display - v9.0.7

List and display form submissions from Form Reform.

ConcreteCMS Marketplace v9.0.7

Block Types Content Source Plugins
  • Form Reform Default Store

Form Reform UTM

jl_form_reform_utm - v9.0.1

Not just Form Reform and not just UTM! Capture and hold incoming UTM (or other) tags and make the tag values available to Form Reform and/or Conditional Redirect as {{place_holders}}. You don't need Form Reform to use this.

ConcreteCMS Marketplace v9.0.1

Single Pages
  • UTM configuration /dashboard/​system/​form_reform/​utm Redirects to UTM Configuration in SEO settings.
  • UTM configuration /dashboard/​system/​seo/​utm Capture and hold incoming UTM (or other) tags and make the tag values available to Form Reform as {{place_holders}}. Also integrates with Conditional Redirect. You don't need Form Reform to use this!

Form Reform Attributes, Express and Users

jl_form_reform_save_to_attributes - v9.0.15

Save submitted forms to Express objects and user attributes. Add and remove users from groups.

ConcreteCMS Marketplace v9.0.15

Block Types Form Handler Plugins
  • Merge From User Textarea Attribute
  • Save to Current Page Textarea Attribute
  • Save to Current User
  • Save to Current User Textarea Attribute
  • Save to Express
  • User Groups

Form Reform Image Picker

jl_form_reform_image_picker - v9.0.4

Form Reform Image Picker provides an image picking input block for Form Reform. The Image Picker Input is preconfigured to connect to most Omni Gallery gallery and slider display widgets, the core gallery block, and thumbnail showing templates for the core page list block. Advanced settings allow the Image Picker Input to be configured to pick images from other galleries and sliders.

ConcreteCMS Marketplace v9.0.4

Block Types Form Handler Plugins
  • Extend From File Properties

Form Reform Data Picker

jl_form_reform_data_picker - v9.0.1

Form Reform Data Picker provides data picking input blocks for Form Reform. The Table Picker Input is preconfigured to connect to Universal Content Puller table display widgets. Advanced settings allow the Table Picker Input to be configured to pick data from other HTML tables.

ConcreteCMS Marketplace v9.0.1

Block Types

Form Reform Dynamics

jl_form_reform_dynamics - v0.2.2

Form handlers for querying Microsoft Dynamics, forwarding and updating form data to Microsoft Dynamics.

Form Handler Plugins
  • Forward to Dynamics
  • Get From Dynamics
  • Update to Dynamics

Form Reform Macros

jl_form_reform_macro - v0.0.4

Extends Form Reform with form handler macros. Provides a new dashboard page at System & Settings > Form Reform > Form Reform Macros to manage macros, and form handlers to run macros.

Single Pages
  • Form Reform Macros /dashboard/​system/​form_reform/​macro Extends Form Reform with form handler macros. Provides a new dashboard page at System & Settings > Form Reform > Form Reform Macros to manage macros, and form handlers to run macros.
Form Handler Plugins
  • Macro

Form Reform Developer

jl_form_reform_developer - v9.0.8

A growing suite of resources to assist those developing blocks, handlers and more complex forms for Form Reform.

ConcreteCMS Marketplace v9.0.8

Single Pages
  • Plugin Dialogue Explorer /dashboard/​system/​form_reform/​plugin_dialogue_explorer A reference copy of all plugin dialogues. They won't save and may only partially work. Just here for browsing.
  • Block Dialogue Explorer /dashboard/​system/​form_reform/​block_dialogue_explorer A reference copy of all form input block dialogues. They won't save and may only partially work. Just here for browsing.
Form Handler Plugins
  • Dump Added Static Handler Categories
  • Dump Form Data
  • Dump Post Data
  • Dump Query Data
  • Dump Static Data Values
  • Log Added Static Handler Categories
  • Log Static Data Values
  • Post Data Review
  • Validate Form Structure

Additional Pages

Reform the way you add new input controls

If you need a specialized template or a custom input element, you can design new templates  or new block types for form elements as you would any block type.

Blocks are easy for third party addition or extension. Block templates and are the first thing any Concrete CMS developer learns to code. They are one of the easiest things to code. The underlying mechanisms are well established and reliable.

Reform what you can do with form data

Form handlers are built about the same extensible plugin system as many of my other addons (Universal Content Puller, Omni Gallery, Extreme Clean ...).

The whole system is aimed at easy extension within Form Reform, by third party addons, by agencies and by site building developers.

Handlers can be easily added to do whatever you want with the form data.

Reform where you can save form data

Saving form data with Form Reform is simply a handler in the processing pipeline. You can save to multiple locations or just one location.

If you need to save data elsewhere, such as to a dedicated table, a table provided through another addon, to another database, send it to an API, forward it to another server, or anywhere you can imagine, you can adapt or develop a form handler to do so.

The complexity of the code depends on where you are saving or sending the data, but wrapping that into a form handler plugin for Form Reform is straight forward.

The Form Reform handler plugin system is designed for easy extension.

Form Reform

Reform the way forms are built. Build a form out of blocks. Take control of how form submissions are processed and how the submitted data is stored. Easy to extend. Easy to reconfigure. Tangible data. Easy to add your own integrations.

Form Reform Display

List and display form submissions from Form Reform.

Form Reform UTM

Not just Form Reform and not just UTM! Capture and hold incoming UTM (or other) tags and make the tag values available to Form Reform and/or Conditional Redirect as {{place_holders}}. You don't need Form Reform to use this.

Form Reform Dynamics

Form handlers for querying Microsoft Dynamics, forwarding and updating form data to Microsoft Dynamics.

Snapshot

A suite of advanced image capture and upload tools. Enhanced drag and drop file uploading. Make screengrabs from within Concrete CMS. Capture images directly from device webcams. Edit images before uploading.

Form Reform Attributes, Express and Users

Save submitted forms to Express objects and user attributes. Add and remove users from groups.

Form Reform Image Picker

Form Reform Image Picker provides an image picking input block for Form Reform. The Image Picker Input is preconfigured to connect to most Omni Gallery gallery and slider display widgets, the core gallery block, and thumbnail showing templates for the core page list block. Advanced settings allow the Image Picker Input to be configured to pick images from other galleries and sliders.

Form Reform Data Picker

Form Reform Data Picker provides data picking input blocks for Form Reform. The Table Picker Input is preconfigured to connect to Universal Content Puller table display widgets. Advanced settings allow the Table Picker Input to be configured to pick data from other HTML tables.

Form Reform Macros

Extends Form Reform with form handler macros. Provides a new dashboard page at System & Settings > Form Reform > Form Reform Macros to manage macros, and form handlers to run macros.

Form Reform Developer

A growing suite of resources to assist those developing blocks, handlers and more complex forms for Form Reform.

Learn with a simple form

While you may have plans to implement some much more complex forms using Form Reform, we strongly recommend you start with a simple form such as our contact form example in order to review the basic principles of using Form Reform before you move onto anything bigger.

  1. Start by submitting the form at Getting Started - Your First Form a few times, even making some deliberate mistakes.
  2. Watch our Getting Started with Form Reform video to see how the form is built.
  3. Read through the rest of Getting Started - Your First Form for more details of how this form is built.
  4. Create a test page on your site to build your own version of Getting Started - Your First Form and experiment.
  5. Develop your test page with some of the concepts introduced by our further examples and experiment with some of the other form inputs.