Back to Community

How to Grant Non-Admin Users Access to Flamingo in WordPress

19 threads Sep 16, 2025 PluginFlamingo

Content

Many WordPress site administrators use the Flamingo plugin to manage form submissions from Contact Form 7. A common challenge arises when you need to grant access to these submissions to users who are not administrators, such as Editors or custom roles, without giving them full administrative privileges. This guide explains the standard methods for controlling Flamingo's access permissions.

Why This Happens

By design, the Flamingo plugin restricts access to its administrative screens to users with the Administrator role. This is a security measure to protect potentially sensitive form data. The plugin uses a set of specific capabilities (like flamingo_edit_inbound_messages) to control access, which are not natively assigned to lower-level user roles by WordPress.

Common Solutions

1. Using a User Role Editor Plugin (Recommended for Most Users)

The most straightforward method for users uncomfortable with code is to use a dedicated user role management plugin. Plugins like User Role Editor or Members allow you to visually assign capabilities to different roles.

Steps:

  1. Install and activate a user role editor plugin, such as User Role Editor.
  2. Navigate to the role management screen (often found under Users -> User Role Editor).
  3. Select the role you wish to modify (e.g., Editor).
  4. Find and check the relevant Flamingo capabilities from the list. The primary capabilities needed are:
    • flamingo_edit_inbound_messages
    • flamingo_edit_inbound_message
    You may also need to grant the edit_users capability, but you can use the role editor to simultaneously revoke other user-related capabilities like list_users or view_users to maintain security.
  5. Click "Update" to save your changes.

Note: Some users have reported conflicts with other admin customization plugins like Adminimize. If this method does not work, try temporarily deactivating other plugins to test for conflicts.

2. Using Code with the `flamingo_map_meta_cap` Filter (For Developers)

For those who prefer a code-based solution or are developing a custom theme/plugin, Flamingo provides a filter hook called flamingo_map_meta_cap. This allows you to map Flamingo's custom capabilities to standard WordPress capabilities that your desired user role already possesses.

Example Code: The following code snippet, added to your theme's functions.php file or a site-specific plugin, will grant access to users with the edit_pages capability (which Editors have by default).

add_filter( 'flamingo_map_meta_cap', 'my_flamingo_map_meta_cap' );

function my_flamingo_map_meta_cap( $meta_caps ) {
    $meta_caps = array_merge( $meta_caps, array(
        'flamingo_edit_inbound_message' => 'edit_pages',
        'flamingo_edit_inbound_messages' => 'edit_pages',
    ) );
    return $meta_caps;
}

Important Warning: If you add this code to your theme's functions.php, your changes will be lost if you switch or update the theme. For a permanent solution, it is highly recommended to create a simple custom plugin to hold this code.

Creating a Read-Only Flamingo Role

Some threads discuss creating a highly restricted role that can only access Flamingo. This is an advanced procedure that involves creating a new user role and meticulously assigning only the necessary Flamingo capabilities while blocking all others. This approach carries a significant risk of misconfiguration, which could lead to security or privacy issues. It is only recommended for experienced developers who thoroughly understand WordPress capabilities.

Conclusion

While Flamingo does not have a built-in settings menu for user roles, access can be effectively managed through two primary methods: using a third-party role editor plugin for ease of use, or implementing a custom code solution for greater control. Always test permission changes on a staging site before applying them to a live website and ensure any user granted access understands the sensitivity of the data they are viewing.

Related Support Threads Support