Formidable Forms

Formidable Forms

  • Features
  • Pricing
  • Resources
    • Docs & Support
    • Blog
    • Community
  • Solutions
    • Web Applications
    • Calculators
    • Surveys
    • Directories
    • Payments
    • Contact forms
  • Login
  • Get Formidable Forms

frm_replace_shortcodes

Last Updated: May 11, 2018

Knowledge Base → Extend Formidable Forms → Formidable Hooks - for Developers → Field Appearance → frm_replace_shortcodes
Heads up!
This article contains PHP code and is intended for developers. We offer this code as a courtesy, but don't provide support for code customizations or 3rd party development.

Use this hook to change the HTML for any fields in your form.

Formidable Forms is the best WordPress Form Builder plugin. Get it for free!

Usage

add_filter('frm_replace_shortcodes', 'frm_change_my_html', 10, 3);
function frm_change_my_html($html, $field, $args)

Parameters

  • $html (string)
  • $field (array)
    • 'id' (int)
    • 'default_value' (string)
    • 'type' (string)
  • $args (array)
    • 'errors' (array)
    • 'form' (array)

Examples

Basic Usage

This example can be used to add text or HTML below each field in your form.

add_filter('frm_replace_shortcodes', 'frm_change_my_html', 10, 3);
function frm_change_my_html($html, $field, $args){
  if($args['form']['id'] == 10){ //change 10 the id of the form to change
    $html .= 'add additional content here ';
  }
  return $html;
}

Checkbox and Radio Button HTML

Use this example to take the radio or checkbox input OUT of the label tags. Please note: Conditional logic that uses radio or checkbox fields will NOT work when you use this code. You must use custom JavaScript to make other fields show or hide when a specific checkbox or radio button is selected.

add_filter('frm_replace_shortcodes', 'frm_change_my_html', 10, 3);
function frm_change_my_html($html, $field, $args){
	if ( in_array ( $field['type'], array( 'radio', 'checkbox' ) ) ) {
		$temp_array = explode('/>', $html);
		$new_html = '';
		foreach ( $temp_array as $key => $piece ) {
			// Get current for attribute
			if ( ( $pos = strpos( $piece, 'field_' . $field['field_key'] . '-' ) ) !== FALSE ) { 
			    $new_key = substr( $piece, $pos );
			    $key_parts = explode( '"', $new_key, 2);
			    $new_key = reset( $key_parts );
			} else {
			    $new_html .= $piece;
			    continue;
			}
			// Move opening label tag
			$label = '

Make this example specific to a field or fields by replacing this:

if ( in_array( $field['type'], array( 'checkbox', 'radio' ) ) ) {

with this:

if ( in_array( $field['id'], array( x, y, z ) ) ) {
  • Usage
  • Parameters
  • Examples
    • Basic Usage
    • Checkbox and Radio Button HTML
Categories
×

Categories

  • Installation & Getting Started
  • Account Management
  • Forms
  • Entries
  • Views
  • Styles
  • Importing & Exporting
  • Add-Ons
  • Extend Formidable Forms

Using WordPress and want to get Formidable Forms for free?

Get Formidable Forms Lite Now

You do not have permission to view this form.

This article may contain affiliate links. Once in a while, we earn commissions from those links. But we only recommend products we like, with or without commissions.

Take on bigger projects Right Now

Get the tools you need to revolutionize your workflow and architect a masterpiece. Build the most advanced WordPress forms and actually use the data you collect in meaningful ways.

Get the most advanced WordPress form plugin and the only form builder with integrated Views.

Get Formidable Forms Now

Resources

  • Community
  • Affiliates
  • Contact
  • Free Online Form Builder

Top Features

  • Application Builder
  • Calculator Forms
  • Surveys & Polls
  • Quiz Maker
  • Form Templates
  • Application Templates
  • Directories
  • Donation Plugin

Company

  • About Us
  • Giving Back
  • Careers
  • Newsletter
  • WP Tasty
  • Nutrifox

Copyright © 2023 Strategy11, LLC. Formidable Forms® is a registered trademark Strategy11, LLC.
Privacy Policy | Terms of Service | Sitemap

Join 300,000+ using Formidable Forms to create form-focused solutions fast. Get Started See User Reviews