Docs & Support

Learn about all the Formidable features and get support from our amazing customer success team.

Add a tab in Global Settings

Using a class

Add a new tab in the Formidable Global Settings using a class.

add_action('frm_add_settings_section', 'add_global_settings_section');
function add_global_settings_section($sections) {
    $sections['section_name'] = array(
        'class' => 'ClassName',
        'function' => 'route',
    );

    return $sections;
}

Replace section_name with your section name. Replace ClassName with the name of the class where you will have functions for this section.

Using a function

If you want to add a tab in Global settings without setting a class, you can specify a function directly as a closure variable or as a string.

add_action('frm_add_settings_section', 'add_global_settings_section');
function add_global_settings_section($sections) {
    $sections['closure_example'] = array(
        'name' => 'With a closure',
        'function' => function() {
            echo 'My custom section html';
        }
    );
    $sections['function_string_example'] = array(
        'name' => 'With a custom render function',
        'function' => 'my_custom_section_html_render_function'
    );
    return $sections;
}

function my_custom_section_html_render_function() {
    echo 'My custom section html';
}

Display new tab

Display new settings and determine whether to save values or just display them. This function should go in the class that is referenced in the add_global_settings_section function.

public static function route(){
    $action = isset( $_REQUEST['frm_action'] ) ? 'frm_action' : 'action';
    $action = FrmAppHelper::get_param( $action );
    if ( $action == 'process-form' ) {
        return self::process_form();
    } else {
        return self::display_form();
    }
}

Display settings

Display the settings form on your new global settings page. This function should go in the class that is referenced in the add_global_settings_section function. In most add-ons, the saved values are stored in the wp_options table.

public static function display_form(){
    // Retrieve settings from database here
    // Display settings
}

Save and display settings

Display the settings form on your new global settings page and update the saved values when the form is submitted. This function should go in the class that is referenced in the add_global_settings_section function. In most add-ons, the saved values are stored in the wp_options table.

public static function process_form(){
    // Retrieve settings from database here

    // Update values in database

    self::display_form();
}
Was this article helpful? *

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.

In this article

    We have a small, but amazing team of dedicated people who are committed to helping you achieve your goals and project requirements.


    Copyright © 2025 Strategy11, LLC. Formidable Forms® is a registered trademark Strategy11, LLC.

    Join 400,000+ using Formidable Forms to create form-focused solutions fast. Get Formidable Forms