{"id":278863,"date":"2026-02-06T21:11:58","date_gmt":"2026-02-06T21:11:58","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/user-approval-manager\/"},"modified":"2026-09-07T06:14:04","modified_gmt":"2026-09-07T06:14:04","slug":"user-approval-manager","status":"publish","type":"plugin","link":"https:\/\/lin.wordpress.org\/plugins\/user-approval-manager\/","author":21146786,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.2.2","stable_tag":"1.2.2","tested":"7.1.1","requires":"5.8","requires_php":"7.2","requires_plugins":null,"header_name":"User Approval Manager","header_author":"Rallios Sotiris","header_description":"Requires administrator approval before new users can log in. Sends notification emails with approval\/rejection buttons.","assets_banners_color":"4b70ae","last_updated":"2026-09-07 06:14:04","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/www.rallios.gr\/","header_plugin_uri":"https:\/\/www.rallios.gr\/portfolio\/user-approval-manager\/","header_author_uri":"https:\/\/www.rallios.gr\/","rating":5,"author_block_rating":0,"active_installs":200,"downloads":1725,"num_ratings":2,"support_threads":1,"support_threads_resolved":1,"author_block_count":0,"sections":["description","faq","changelog"],"tags":{"1.0.3":{"tag":"1.0.3","author":"srallios","date":"2026-09-06 20:09:08","revision":3683913},"1.0.4":{"tag":"1.0.4","author":"srallios","date":"2026-02-07 21:22:43","revision":3456108},"1.0.5":{"tag":"1.0.5","author":"srallios","date":"2026-02-20 21:31:33","revision":3466106},"1.0.6":{"tag":"1.0.6","author":"srallios","date":"2026-06-06 06:33:37","revision":3562955},"1.1.0":{"tag":"1.1.0","author":"srallios","date":"2026-09-07 05:13:09","revision":3684185},"1.2.2":{"tag":"1.2.2","author":"srallios","date":"2026-09-07 06:14:04","revision":3684247}},"upgrade_notice":{"1.2.2":"<p>Approval and Notification role pickers now show only dashboard-accessible roles. Review your saved role selections after upgrading.<\/p>","1.2.1":"<p>Auto-approval settings now live in their own admin tab. Role cards use a refined 3-column layout.<\/p>","1.2.0":"<p>Review Approval Admin Roles and Notification Roles after upgrading. Legacy administrator email fields are migrated to Additional Notification Emails.<\/p>","1.1.0":"<p>Strict role-based auto-approval, improved settings UI, and WordPress 7.1 compatibility. Review your selected auto-approve roles after upgrading.<\/p>","1.0.0":"<p>Initial release.<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":2},"assets_icons":{"icon-256x256.png":{"filename":"icon-256x256.png","revision":3455688,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3456487,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3456487,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.3","1.0.4","1.0.5","1.0.6","1.1.0","1.2.2"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3684247,"resolution":"1","location":"assets","locale":"","width":1066,"height":952},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3684247,"resolution":"2","location":"assets","locale":"","width":1042,"height":616},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3684247,"resolution":"3","location":"assets","locale":"","width":1114,"height":619},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3684247,"resolution":"4","location":"assets","locale":"","width":1100,"height":625},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3684247,"resolution":"5","location":"assets","locale":"","width":1138,"height":586}},"screenshots":{"1":"Plugin settings page \u2013 administrator email configuration","2":"Auto-Approval Settings","3":"User pending approval notification email","4":"Approval email with approve \/ reject buttons","5":"User approval notification email"}},"plugin_section":[262246],"plugin_tags":[255374,214058,600,168375,5134],"plugin_category":[54],"plugin_contributors":[255375],"plugin_business_model":[],"class_list":["post-278863","plugin","type-plugin","status-publish","hentry","plugin_section-dashboard-widgets","plugin_tags-admin-approval","plugin_tags-login-control","plugin_tags-security","plugin_tags-user-approval","plugin_tags-user-registration","plugin_category-security-and-spam-protection","plugin_contributors-srallios","plugin_committers-srallios"],"banners":{"banner":"https:\/\/ps.w.org\/user-approval-manager\/assets\/banner-772x250.png?rev=3456487","banner_2x":"https:\/\/ps.w.org\/user-approval-manager\/assets\/banner-1544x500.png?rev=3456487","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/user-approval-manager\/assets\/icon-256x256.png?rev=3455688","icon_2x":"https:\/\/ps.w.org\/user-approval-manager\/assets\/icon-256x256.png?rev=3455688","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/user-approval-manager\/assets\/screenshot-1.png?rev=3684247","caption":"Plugin settings page \u2013 administrator email configuration"},{"src":"https:\/\/ps.w.org\/user-approval-manager\/assets\/screenshot-2.png?rev=3684247","caption":"Auto-Approval Settings"},{"src":"https:\/\/ps.w.org\/user-approval-manager\/assets\/screenshot-3.png?rev=3684247","caption":"User pending approval notification email"},{"src":"https:\/\/ps.w.org\/user-approval-manager\/assets\/screenshot-4.png?rev=3684247","caption":"Approval email with approve \/ reject buttons"},{"src":"https:\/\/ps.w.org\/user-approval-manager\/assets\/screenshot-5.png?rev=3684247","caption":"User approval notification email"}],"raw_content":"<!--section=description-->\n<p><strong>User Approval Manager<\/strong> adds an approval layer to WordPress user registration.<\/p>\n\n<p>When a new user registers, the plugin prevents immediate login and notifies the site administrator(s) by email. The administrator can approve or reject the user directly via action buttons included in the email.<\/p>\n\n<p>At the same time, the user receives an automatic email informing them that their account is pending approval. Once approved, the user is notified and can log in normally.<\/p>\n\n<p>This plugin is ideal for:\n- Membership websites\n- B2B platforms\n- Private communities\n- WooCommerce stores requiring verified customers<\/p>\n\n<p><strong>Plugin Homepage:<\/strong> <a href=\"https:\/\/www.rallios.gr\/portfolio\/user-approval-manager\/\">User Approval Manager<\/a><\/p>\n\n<p><strong>Author:<\/strong> <a href=\"https:\/\/www.rallios.gr\/\">Rallios Sotiris<\/a><\/p>\n\n<h3>Features<\/h3>\n\n<ul>\n<li>Blocks login for newly registered users until approved<\/li>\n<li><strong>Custom approval capability<\/strong> \u2014 assign the <code>uam_manage_approvals<\/code> capability to selected dashboard roles so they can approve or reject users<\/li>\n<li><strong>Enhanced General Settings layout<\/strong> \u2014 structured sections for approval roles and notification settings, plus a dedicated Auto-Approval Settings tab<\/li>\n<li><strong>Role-based notification routing<\/strong> \u2014 send approval emails to users in selected notification roles plus additional custom email addresses<\/li>\n<li><strong>Email tags UI<\/strong> \u2014 add comma-separated or Enter-separated notification emails with pill-style chips and validation<\/li>\n<li>Approve or reject users directly from email buttons or the Users screen<\/li>\n<li><strong>Reset password button<\/strong> \u2014 use the {reset_password_button} placeholder in the User Approval Email to send new users a one-click \u201cSet Password\u201d link (respects custom login URLs and wp_lang)<\/li>\n<li><strong>Role-based auto-approval<\/strong> \u2014 choose one or more WordPress user roles to auto-approve on registration (for example, auto-approve <code>customer<\/code> while requiring manual approval for <code>wholesale_customer<\/code>)<\/li>\n<li>Sends automatic status emails to users (pending \/ approved)<\/li>\n<li>Simple configuration via WordPress admin<\/li>\n<li>Lightweight and focused \u2014 no unnecessary complexity<\/li>\n<\/ul>\n\n<!--section=faq-->\n<dl>\n<dt id=\"can%20users%20log%20in%20before%20approval%3F\"><h3>Can users log in before approval?<\/h3><\/dt>\n<dd><p>No. Until an administrator approves the account, login is completely blocked.<\/p><\/dd>\n<dt id=\"who%20can%20approve%20pending%20users%3F\"><h3>Who can approve pending users?<\/h3><\/dt>\n<dd><p>Site owners configure this under Approval Admin Roles in General Settings. Selected dashboard roles receive the <code>uam_manage_approvals<\/code> capability.<\/p><\/dd>\n<dt id=\"who%20receives%20approval%20notification%20emails%3F\"><h3>Who receives approval notification emails?<\/h3><\/dt>\n<dd><p>All active users in the selected Notification Roles, plus any addresses added in Additional Notification Emails.<\/p><\/dd>\n<dt id=\"does%20this%20work%20with%20woocommerce%20registration%3F\"><h3>Does this work with WooCommerce registration?<\/h3><\/dt>\n<dd><p>Yes. It works with standard WordPress and WooCommerce user registrations, including checkout account creation.<\/p><\/dd>\n<dt id=\"can%20i%20auto-approve%20only%20certain%20user%20roles%3F\"><h3>Can I auto-approve only certain user roles?<\/h3><\/dt>\n<dd><p>Yes. Open the Auto-Approval Settings tab and select the roles you want to auto-approve. Users with any selected role are approved automatically; all other roles follow the manual approval workflow.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20no%20roles%20are%20selected%20for%20auto-approval%3F\"><h3>What happens if no roles are selected for auto-approval?<\/h3><\/dt>\n<dd><p>All new registrations require manual administrator approval.<\/p><\/dd>\n<dt id=\"can%20i%20customize%20the%20email%20content%3F\"><h3>Can I customize the email content?<\/h3><\/dt>\n<dd><p>Yes. Email messages can be edited to match your site\u2019s tone and language.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.2.2<\/h4>\n\n<ul>\n<li>Improved: Approval Admin Roles and Notification Roles now list only dashboard-accessible roles (Subscriber, Customer, and similar front-end-only roles are excluded)<\/li>\n<\/ul>\n\n<h4>1.2.1<\/h4>\n\n<ul>\n<li>New: Dedicated Auto-Approval Settings admin tab \u2014 auto-approval configuration moved out of General Settings<\/li>\n<li>Improved: Refined role card layout with a cleaner 3-column grid, compact cards, and responsive fallbacks for smaller screens<\/li>\n<\/ul>\n\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>New: Custom approval capability assignment (<code>uam_manage_approvals<\/code>) for selected dashboard roles<\/li>\n<li>New: Enhanced General Settings layout with Approval Admin Roles, Email Notification Settings, and relocated Auto-Approval section<\/li>\n<li>New: Notification Roles setting \u2014 send approval emails to all active users in selected roles<\/li>\n<li>New: Additional Notification Emails field with pill-style email tags UI and validation<\/li>\n<li>Improved: Email notification dispatcher routes to role members and custom addresses<\/li>\n<li>Improved: Approval actions, dashboard widget, and user profile controls now respect the custom capability<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Fix: Auto-approval now strictly respects selected roles only \u2014 unchecked roles always require manual approval<\/li>\n<li>Fix: Deferred registration processing so WooCommerce and custom role plugins assign the final role before approval is evaluated<\/li>\n<li>New: Role-based auto-approval selection via a modern checkbox grid with Select All \/ Deselect All controls<\/li>\n<li>Removed: Legacy global auto-approval override that could approve all roles regardless of settings<\/li>\n<li>Compatibility fixes and testing for WordPress 7.1<\/li>\n<\/ul>\n\n<h4>1.0.7<\/h4>\n\n<ul>\n<li>New: Auto-approval for Customers checkbox \u2014 auto-approve Customer role users while other roles require manual approval<\/li>\n<\/ul>\n\n<h4>1.0.6<\/h4>\n\n<ul>\n<li>Tested on WordPress 7.0<\/li>\n<\/ul>\n\n<h4>1.0.5<\/h4>\n\n<ul>\n<li>New: Reset password button placeholder ({reset_password_button}) in User Approval Email; link uses your login URL and wp_lang<\/li>\n<li>New: Auto-approval checkbox in settings to allow new users to log in without manual approval<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Fix reset password link URL; add reset password button placeholder<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Fix errors<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Fix errors<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>User approval workflow implemented<\/li>\n<li>Admin and user email notifications<\/li>\n<li>Login blocking until approval<\/li>\n<\/ul>","raw_excerpt":"Requires admin approval for new users to log in. Admins can selectively auto-approve specific user roles while others require manual review.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/lin.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/278863","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lin.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/lin.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/lin.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=278863"}],"author":[{"embeddable":true,"href":"https:\/\/lin.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/srallios"}],"wp:attachment":[{"href":"https:\/\/lin.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=278863"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/lin.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=278863"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/lin.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=278863"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/lin.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=278863"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/lin.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=278863"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/lin.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=278863"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}