11 versions
Ultimate Member history.
Every release of Ultimate Member is archived here with its changelog, file size, and security scan result. Use the archive to roll back to a stable release or audit what changed between updates.
8 of 11 releases scanned clean
v2.14.1Latest
October 23, 20263.7 MBScanned
Other
- *Bugfixes**
Fixed
- CVE-2026-107625 security issue. Added confirmation prompt for external links and improve localization support in frontend scripts. (Reported by Wordfence).
- Reading the icons' list via `UM()->setup()->get_icons_list()`. This function provides a static in-memory fallback if the DB option is missing or unreadable.
September 29, 20263.7 MBScanned
Other
- *Enhancements**
- *Bugfixes**
- *Templates Requiring Update**
- profile/comments.php
- profile/posts.php
- login.php
- members.php
- profile.php
- register.php
- *Deprecated**
- Marked as deprecate soon: `in_group` attribute for the fields in the UM Forms builder.
- *Note: Cached and optimized/minified assets(JS/CSS) must be flushed/re-generated after the upgrade**
Added
- `$form_id` parameter to the action hooks `um_before_form`, `um_before_{$mode}_fields`, `um_main_{$mode}_fields`, `um_after_form_fields`, `um_after_{$mode}_fields` and `um_after_form`.
- Action hook `um_before_render_dynamic_modal_content` for 3rd-party integration when the admin popup is opened.
- Filter hooks `um_email_validation_real_error_codes` and `um_email_validation_error_message` for 3rd-party integration to change or make visible the real error message for email fields validation.
- Threads field support in the UM Forms and Social Icons meta-row.
Fixed
- Security issue related to an unauthenticated PHP Object Injection vulnerability. (Reported by Ananda Dhakal (Patchstack)). Added `um_maybe_unserialize()` function.
- Security issue related to administrator Stored SQL Injection via Directory Search-Field Identifiers. (Reported by Ananda Dhakal (Patchstack)). Added sanitizing for the searching fields in the member directory.
- Security issue related to an unauthenticated Improper Enforcement of Behavioral Workflow vulnerability. (Reported by Ananda Dhakal (Patchstack)). Added unique nonce fields and attributes for requests.
- CVE-2026-96270 security issue. Added sanitizing for the form_id attribute during the Ultimate Member forms submission. (Reported by Wordfence).
- CVE-2026-93428 security issue. Fixed fields privacy when displaying the User Profile fields. (Reported by Wordfence).
- Security issue related to Privilege Escalation. Fixed user account submission and nonce security. Reset the user if it hasn't the ability to download the file. (Reported by Intrudify (Patchstack)).
- `is_url()` validation for the social links fields.
- `unique_email` validation. Parse primary and secondary email fields to make the email unique between them.
Removed
- `UM()->check_ajax_nonce` and `UM()->admin()->check_ajax_nonce()` functions. Use WordPress native `wp_verify_nonce()`, `check_admin_referer()` and `check_ajax_referer()` instead with unique nonce field values. Left them now for backward compatibility.
- Using `um_admin_scripts.nonce` and `um_scripts.nonce` localized data in UM scripts. Left them still localized for backward compatibility.
- JS common action for `'.um-ajax-action'` class. It's not used anymore in UM core and extensions and can be removed the same as AJAX handler for `um_muted_action`.
- Action hook `um_run_ajax_function__{$hook}` used in the `um_muted_action` handler.
September 15, 20263.7 MBScanned
Other
- *Enhancements**
- *Bugfixes**
- *Deprecated**
Added
- Fallback for `wp-cli/wp-config-transformer` library if the wp-config.php file isn't writable.
- Filter hook `um_members_directory_filter_text` 3rd parameter `$is_default` to check if it's admin filtering or frontend query.
- 'Administrative capabilities ban' option enabled by default after the first installation.
Improved
- Slow SQL query for batch empty account status check.
- Redundant SQL calls when editing the Profile page with callback dropdowns. Cached usermeta existence checks per user and key during a single load (Reported by @MissVeronica, author @faisalahammad).
Fixed
- Security issue related to an unauthenticated visitor can store JavaScript that runs in an administrator's session, through their own profile name. (Reported by Karthik Ramakrishnan and WPScan team). Fixed `um_convert_tags()` function and applied the escapers throughout the placeholder replacement.
- Using LIKE compare for the text-type filters with custom usermeta table (Reported by @MissVeronica, author @faisalahammad).
- "Can user edit this field?" field setting displaying only for the User Profile form fields.
- Getting the pages list in the wp-admin UM > Settings > General > Pages section.
- Displaying the field-type time on the User Profile page.
- Using `illegal_user_logins` for the current admin user with the username specified in the illegal user logins list.
Removed
- Filter hook `um_members_directory_filter_text_meta_value` is fully deprecated, replacement isn't required for the text-type filter field.
v2.13.0Unavailable
August 24, 20263.7 MBScanned
Other
- *Enhancements**
- *Bugfixes**
- *Templates Requiring Update**
- gdpr-register.php
- profile.php
- *Deprecated**
- *Note: Cached and optimized/minified assets(JS/CSS) must be flushed/re-generated after the upgrade**
Added
- Using `illegal_user_logins` filter to sanitize the `user_login` field value during registration or upgrade.
- Using `wp-cli/wp-config-transformer` library to set Ultimate Member > API keys settings constants in wp-config.php instead of storing them in DB.
- New user-capabilities functions `UM()->common()->users()->can_view_user()`, `UM()->common()->users()->get_privacy_setting()`, `UM()->common()->users()->is_user_profile_private()`, `UM()->common()->users()->get_restricted_privacy_notice()`, `UM()->common()->users()->can_view_private_user_profile()`, `UM()->common()->users()->can_view_user_profile()`. The future replacement for the `um_can_view_profile()` helper with different cases to check.
Improved
- Version of the WordPress native excluded functions to avoid the using them in the callbacks.
Fixed
- `WP_Filesystem()` initialization optimization. Init `WP_Filesystem()` only once when it's necessary.
- Redirect on non-main queries (breaks Spectra and block themes). Added conditional check for the main query (based on @faisalahammad suggestions).
- Registration form infinite loop - gdpr-register.php calls `the_content` recursively causing PHP fatal error. Excluded predefined UM pages and pages with [ultimatemember] shortcode from the list, render empty content for such pages if they are already selected to avoid PHP error (based on @faisalahammad suggestions).
- Causes site-wide `rest_cookie_invalid_nonce` on all authenticated REST requests. Refactored admin notice handling to enhance security and flexibility. Removed using localized `um_admin_scripts.nonce` globally on wp-admin. It's localized only on UM wp-admin pages. (based on @michaeldavisdcpersonal report and @faisalahammad suggestions).
- Security issue when an unauthenticated visitor can read the content of comments awaiting moderation. (Reported by Alessandro Greco (Aleff) and Giovambattista Ianni, University of Calabria (UNICAL)).
- Security issue related to an unauthenticated privilege escalation through the profile form role field. (Reported by Jakub Herman).
- Security issue, CVE ID: CVE-2026-18547. Used 'user_input' allowed a tag list to sanitize HTML-enabled textarea fields. Deprecated Pickadate.JS and Pickatime.JS libraries for User Forms fields.
- Member Directory type-button styles.
- Added fallback for the date and time fields to show date and time using the WordPress native format.
Removed
- Pickadate.JS and Pickatime.JS libraries for User Forms fields. Used HTML native ` ` and ` ` instead.
July 6, 20263.7 MBScanned
Other
- *Enhancements**
- *Bugfixes**
- *Note: Cached and optimized/minified assets(JS/CSS) must be flushed/re-generated after the upgrade**
Added
- Ability to handle local website URLs resources (image, audio, video from Media Library, 3rd-party local URLs embed to iframe) in the oEmbed-type field value.
- The API key field type for the settings fields.
Fixed
- Security issue, CVE ID: CVE-2026-4248. Extern blacklist filter for convert_tag replace placeholders function. (Additional keys were researched by Hrro. This info added for the Wordfence team if they need this information).
- Security issue when accidentally `manage_options` level user role can be listed in the User Role dropdown on the registration/edit profile forms. (Researched by Haitam Lazaar).
- Set size proportions during responsive handlers.
- mousewheel action during member directory loading and overlay is displayed.
- WP_Styles notice due to not loaded `um_modal` styles.
- oEmbed-type field styles.
v2.12.0Unavailable
June 12, 20263.7 MB
Other
- *Bugfixes**
- * Restricted `get_directory_by_hash()` function to only match posts with post_type='um_directory' and publish post status.
- * Used `0 =
Fixed
- Security issue, CVE ID: CVE-2026-7761.
May 1, 20263.6 MBScanned
Other
- *Enhancements**
- *Bugfixes**
- *Note: Cached and optimized/minified assets(JS/CSS) must be flushed/re-generated after the upgrade**
Added
- Checking format of the 3rd-party registered custom fields. Avoid PHP errors related to the wrong format or unexpected attributes.
Fixed
- Added uploader fields `accept` argument for set allowed mime-types in the upload dialog window. Updated 3.1.2 version of this library [hayageek/jquery-upload-file](https://github.com/hayageek/jquery-upload-file/). Don't use 4.0.11 version for now.
- JS initialization of the empty uploader fields.
- User Profile URLs in the User Profile form on the not-predefined pages placed via shortcode.
v2.11.3Unavailable
March 28, 20263.6 MBScanned
Other
- *Enhancements**
- *Bugfixes**
- *Templates Requiring Update**
- members.php
- message.php
- restricted-blog.php
- restricted-taxonomy.php
- *Note: Cached and optimized/minified assets(JS/CSS) must be flushed/re-generated after the upgrade**
Added
- UM > Settings > Advanced > APIs section for set available APIs settings.
- GoogleMaps API setting when it's available.
- Function `UM()->mail()->enabled_email()` for checking if the email notification is enabled by the user.
- `color` type of sanitize settings saved in wp-admin.
- Checking array type of submission data when `url` type of sanitize is used in wp-admin.
- Enhance UM form sanitization filter with $form_data param. Added the $form_data parameter to the `um_sanitize_form_submission` filter.
- Option for special character requirement for passwords. It's situated in "General > Users > Password requires special character" (based on @faisalahammad suggestions)
- Filter hook `um_before_account_delete_text` for changing before delete account text by 3rd-party plugins. End-customers can use it for translations.
- Filter hook `um_custom_{$message_key}` (`um_custom_pending_message`, `um_custom_checkmail_message`) for changing after-registration message based on the user status by 3rd-party plugins. End-customers can use it for translations.
- Filter hook `um_convert_tags_blacklist_fields` For 3rd-party integrations to control the usermeta keys in `um_convert_tags()` function.
- `.um-display-none` CSS utility + `umShow()/umHide()/umToggle()` jQuery helpers.
- `um-notice` JS library.
Fixed
- Security issue, CVE ID: CVE-2026-4248. Added blacklist filter for convert_tag replace placeholders function.
- HTML sanitization logic for textarea-type custom fields with enabled HTML using setting.
- WP editor formatting to prevent incorrect HTML entity conversion when using html-mode in the textarea-type custom fields. Applied and removed this filter dynamically to avoid interfering with other processes.
- Dynamic string translation pattern and improve escaping. Replaced incorrect __('%s') pattern. (@faisalahammad)
- `wp_die()` function triggering on the frontend actions. Added UM notice above the User Profile page. (based on @faisalahammad suggestions)
- Password reset key handling for multiple users. Previously, the static reset key caused issues when handling password resets for multiple users simultaneously.
- `um_trim_string()` function for using with UTF-8 symbols.
- PHP Notice: Function WP_Scripts::add was called incorrectly.
v2.11.2Unavailable
February 12, 20263.6 MBScanned
Other
- *Enhancements**
- *Bugfixes**
- *Templates Requiring Update**
- members.php
- searchform.php
- *Note: Cached and optimized/minified assets(JS/CSS) must be flushed/re-generated after the upgrade**
Added
- Server-side validation when the Search Form is submitted.
- Action hook `um_approve_user_on_email_confirmation` to natively approve the user after validating the email activation link.
- JS filter wp.hook `um_member_directory_popstate_ignore` to stop window.pushSate in the member directory for 3rd-party integrations.
Fixed
- Security issue, CVE ID: CVE-2025-15064. Deprecated the ability to use HTML inside the user description. It's still allowed to use only predefined 'user_description' tags in `wp_kses()`.
- Security issue, CVE ID: CVE-2026-1404. Modified template item formatting to avoid using HTML characters in the filter values.
- Profile photo dropdown menu position for screens smaller than 340px.
- Display of the saved value of the "Privacy Options" > "Allowed roles" setting for the member directory.
- Information in Site-Health about the registration form's `Template` and `Role` settings.
- Information in Site-Health about the login and profile form's `Template` settings.
v2.11.1Unavailable
December 24, 20253.6 MBUnknown
Other
- *Enhancements**
- *Bugfixes**
- *Templates Requiring Update**
- members.php
- members-grid.php
- members-list.php
Added
- 'Privacy Options' for Member Directory. 'Who can see this member directory' and 'Allowed Roles'.
- 'Rate Limit' setting for nopriv AJAX actions.
Fixed
- Security issue CVE ID: CVE-2025-13220. Used `shortcode_atts()` function to avoid using wrong attributes.
- Security issue CVE ID: CVE-2025-13217. Implementing proper input sanitization and escaping for iframe URLs in YouTube, Vimeo, and Google Maps embeds.
- Security issue CVE ID: CVE-2025-14081. Filtering fields based on user permissions during Account form submission.
- Security issue CVE ID: CVE-2025-12492. Added directory privacy settings and added rate limiting.
Why archive
Sometimes the latest release isn't the one you need. The archive lets you pin Ultimate Member to a known-good version, or roll back while a bug is investigated. Every release stays scanned and reachable.