{"id":225459,"date":"2025-07-21T00:17:07","date_gmt":"2025-07-21T00:17:07","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/attributes-user-access\/"},"modified":"2026-02-10T16:59:04","modified_gmt":"2026-02-10T16:59:04","slug":"attributes-user-access","status":"publish","type":"plugin","link":"https:\/\/nn.wordpress.org\/plugins\/attributes-user-access\/","author":23240689,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.2.2","stable_tag":"1.2.2","tested":"6.7.5","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"Attributes User Access","header_author":"Attributes WP","header_description":"Attributes User Access is a lightweight and flexible authentication solution for WordPress designed for greater control over login process.","assets_banners_color":"b2aed0","last_updated":"2026-02-10 16:59:04","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/attributeswp.com\/","header_plugin_uri":"https:\/\/attributeswp.com\/#features","header_author_uri":"https:\/\/attributeswp.com\/","rating":5,"author_block_rating":0,"active_installs":20,"downloads":584,"num_ratings":2,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"attributeswp","date":"2025-07-21 01:18:12"},"1.1.0":{"tag":"1.1.0","author":"attributeswp","date":"2025-07-21 18:36:27"},"1.2.0":{"tag":"1.2.0","author":"attributeswp","date":"2025-11-04 17:16:14"},"1.2.1":{"tag":"1.2.1","author":"attributeswp","date":"2025-11-04 18:14:36"},"1.2.2":{"tag":"1.2.2","author":"attributeswp","date":"2026-02-10 16:59:04"}},"upgrade_notice":{"1.2.2":"<p>Important security and compliance update: Replaced PHP sessions with WordPress transients for better scalability and WordPress.org compliance. Enhanced user experience with quick access links. Recommended for all users.<\/p>","1.2.1":"<p>Asset optimization update: Fixed minified asset loading issues and improved performance with optimized file sizes and smart fallback system.<\/p>","1.2.0":"<p>Stability and performance update: Enhanced security, improved reliability, and optimized codebase for better user experience.<\/p>","1.1.0":"<p>Major feature update: Enhanced template system, improved security, and new extension management capabilities.<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":2},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3331090,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3331090,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3331079,"resolution":"1544x500","location":"assets","locale":""},"banner-772-250.png":{"filename":"banner-772-250.png","revision":3331076,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","1.1.0","1.2.0","1.2.1","1.2.2"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3331130,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3331130,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3331130,"resolution":"3","location":"assets","locale":""},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3331130,"resolution":"4","location":"assets","locale":""},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3331130,"resolution":"5","location":"assets","locale":""}},"screenshots":{"1":"User Access settings page with login page management","2":"Custom login page with branded design","3":"Login redirection settings and configuration","4":"Page status indicators showing active\/inactive state","5":"Default login form template in action"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[1912,710,3691,602,600],"plugin_category":[38,54],"plugin_contributors":[245154],"plugin_business_model":[],"class_list":["post-225459","plugin","type-plugin","status-publish","hentry","plugin_tags-access-control","plugin_tags-authentication","plugin_tags-custom-login","plugin_tags-login","plugin_tags-security","plugin_category-authentication","plugin_category-security-and-spam-protection","plugin_contributors-attributeswp","plugin_committers-attributeswp"],"banners":{"banner":"https:\/\/ps.w.org\/attributes-user-access\/assets\/banner-772-250.png?rev=3331076","banner_2x":"https:\/\/ps.w.org\/attributes-user-access\/assets\/banner-1544x500.png?rev=3331079","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/attributes-user-access\/assets\/icon-128x128.png?rev=3331090","icon_2x":"https:\/\/ps.w.org\/attributes-user-access\/assets\/icon-256x256.png?rev=3331090","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/attributes-user-access\/assets\/screenshot-1.png?rev=3331130","caption":"User Access settings page with login page management"},{"src":"https:\/\/ps.w.org\/attributes-user-access\/assets\/screenshot-2.png?rev=3331130","caption":"Custom login page with branded design"},{"src":"https:\/\/ps.w.org\/attributes-user-access\/assets\/screenshot-3.png?rev=3331130","caption":"Login redirection settings and configuration"},{"src":"https:\/\/ps.w.org\/attributes-user-access\/assets\/screenshot-4.png?rev=3331130","caption":"Page status indicators showing active\/inactive state"},{"src":"https:\/\/ps.w.org\/attributes-user-access\/assets\/screenshot-5.png?rev=3331130","caption":"Default login form template in action"}],"raw_content":"<!--section=description-->\n<p>Attributes User Access is a lightweight and flexible authentication solution for WordPress. It empowers site administrators with detailed control over login processes, enhancing user authentication and access experience with a focus on security and performance.<\/p>\n\n<h4>Core Features<\/h4>\n\n<p><strong>Custom Login Page Creation<\/strong><\/p>\n\n<ul>\n<li>Generate fully integrated login pages with WordPress<\/li>\n<li>Use shortcode-based forms for easy theme compatibility<\/li>\n<li>Automatically adapts to WordPress core updates<\/li>\n<li>Template override system for complete customization<\/li>\n<\/ul>\n\n<p><strong>Flexible Login Redirection<\/strong><\/p>\n\n<ul>\n<li>Redirect native WordPress login requests<\/li>\n<li>Define role-based and context-aware redirection rules<\/li>\n<li>Custom redirect URLs per user role<\/li>\n<\/ul>\n\n<p><strong>Developer-Focused Architecture<\/strong><\/p>\n\n<ul>\n<li>PSR-4 autoloading and object-oriented design<\/li>\n<li>Extensible with action and filter hooks<\/li>\n<li>Modular components for easy customization<\/li>\n<li>Comprehensive API for extensions<\/li>\n<\/ul>\n\n<p><strong>Security &amp; Performance<\/strong><\/p>\n\n<ul>\n<li>WordPress.org compliant security practices<\/li>\n<li>Nonce verification on all forms and AJAX requests<\/li>\n<li>Transient-based error handling (no PHP sessions)<\/li>\n<li>Optimized asset loading<\/li>\n<li>Minified CSS and JavaScript for production<\/li>\n<\/ul>\n\n<h4>Shortcode Usage<\/h4>\n\n<p><strong>Basic login form:<\/strong>\n    [attributes_login_form]<\/p>\n\n<p><strong>With parameters:<\/strong>\n    [attributes_login_form redirect=\"\/dashboard\" remember=\"false\"]<\/p>\n\n<p><strong>Available parameters:<\/strong><\/p>\n\n<ul>\n<li><code>redirect<\/code> - Target URL after login (default: Dashboard)<\/li>\n<li><code>remember<\/code> - Show \"Remember Me\" checkbox (default: true)<\/li>\n<li><code>form_id<\/code> - Custom form identifier (default: attributes_login_form)<\/li>\n<li><code>label_username<\/code> - Custom username field label<\/li>\n<li><code>label_password<\/code> - Custom password field label<\/li>\n<li><code>label_remember<\/code> - Custom remember me label<\/li>\n<li><code>label_log_in<\/code> - Custom login button text<\/li>\n<\/ul>\n\n<h4>Template System<\/h4>\n\n<h4>Template System<\/h4>\n\n<p>Override templates in your theme for complete customization.<\/p>\n\n<p><strong>Template location in theme:<\/strong>\n    your-theme\/attributes\/front\/forms\/login-form.php<\/p>\n\n<p><strong>Original template location:<\/strong>\n    wp-content\/plugins\/attributes-user-access\/templates\/front\/forms\/login-form.php<\/p>\n\n<p>Copy the original template to your theme and customize as needed. The plugin automatically uses your theme's template when available.<\/p>\n\n<h4>Developer Hooks<\/h4>\n\n<p><strong>Actions:<\/strong><\/p>\n\n<ul>\n<li><code>attrua_before_login_form<\/code> - Fires before rendering the login form wrapper<\/li>\n<li><code>attrua_after_login_form<\/code> - Fires after rendering the login form<\/li>\n<li><code>attrua_login_form_fields<\/code> - Hook for adding custom fields to login form<\/li>\n<li><code>attrua_login_failed<\/code> - Fires when a login attempt fails<\/li>\n<li><code>attrua_successful_login<\/code> - Fires after successful authentication<\/li>\n<li><code>attrua_before_page_creation<\/code> - Fires before creating authentication pages<\/li>\n<li><code>attrua_after_page_creation<\/code> - Fires after creating authentication pages<\/li>\n<\/ul>\n\n<p><strong>Filters:<\/strong><\/p>\n\n<ul>\n<li><code>attrua_login_redirect_url<\/code> - Customize login redirection<\/li>\n<li><code>attrua_login_error_message<\/code> - Modify login error messages<\/li>\n<li><code>attrua_login_credentials<\/code> - Filter login credentials before authentication<\/li>\n<li><code>attrua_action_links<\/code> - Modify plugin action links<\/li>\n<li><code>attrua_row_meta<\/code> - Modify plugin row meta links<\/li>\n<\/ul>\n\n<h3>Privacy Policy<\/h3>\n\n<p>Attributes User Access does not:<\/p>\n\n<ul>\n<li>Collect any user data<\/li>\n<li>Send data to external servers<\/li>\n<li>Use cookies for tracking<\/li>\n<li>Store sensitive information<\/li>\n<\/ul>\n\n<p>The plugin only stores:<\/p>\n\n<ul>\n<li>Plugin settings in WordPress options table<\/li>\n<li>Temporary error messages in WordPress transients (auto-expire)<\/li>\n<li>Page IDs for custom authentication pages<\/li>\n<\/ul>\n\n<p>All data is stored locally in your WordPress database and is completely removed upon plugin uninstallation.<\/p>\n\n<h3>Support &amp; Contributing<\/h3>\n\n<p><strong>Documentation:<\/strong> <a href=\"https:\/\/attributeswp.com\/docs\">https:\/\/attributeswp.com\/docs<\/a>\n<strong>Support Forum:<\/strong> <a href=\"https:\/\/wordpress.org\/support\/plugin\/attributes-user-access\">https:\/\/wordpress.org\/support\/plugin\/attributes-user-access<\/a>\n<strong>GitHub Repository:<\/strong> <a href=\"https:\/\/github.com\/attributeswp\/attributes-user-access\">https:\/\/github.com\/attributeswp\/attributes-user-access<\/a>\n<strong>Report Issues:<\/strong> <a href=\"https:\/\/github.com\/attributeswp\/attributes-user-access\/issues\">https:\/\/github.com\/attributeswp\/attributes-user-access\/issues<\/a><\/p>\n\n<p>Contributions are welcome! Please feel free to submit pull requests or open issues on GitHub.<\/p>\n\n<!--section=installation-->\n<h4>Automatic Installation<\/h4>\n\n<ol>\n<li>Log in to your WordPress admin panel<\/li>\n<li>Navigate to Plugins &gt; Add New<\/li>\n<li>Search for \"Attributes User Access\"<\/li>\n<li>Click \"Install Now\" and then \"Activate\"<\/li>\n<li>Navigate to User Access in the admin menu<\/li>\n<li>Create your custom login page and configure settings<\/li>\n<\/ol>\n\n<h4>Manual Installation<\/h4>\n\n<ol>\n<li>Download the plugin ZIP file<\/li>\n<li>Log in to your WordPress admin panel<\/li>\n<li>Navigate to Plugins &gt; Add New &gt; Upload Plugin<\/li>\n<li>Choose the downloaded ZIP file and click \"Install Now\"<\/li>\n<li>Activate the plugin<\/li>\n<li>Navigate to User Access to configure settings<\/li>\n<\/ol>\n\n<h4>System Requirements<\/h4>\n\n<ul>\n<li>WordPress 5.8 or higher<\/li>\n<li>PHP 7.4 or higher (PHP 8.0+ recommended)<\/li>\n<li>MySQL 5.6 or higher \/ MariaDB 10.1 or higher<\/li>\n<li>HTTPS enabled (recommended for security)<\/li>\n<\/ul>\n\n<h4>Quick Start Guide<\/h4>\n\n<ol>\n<li><strong>Activate the plugin<\/strong> through the 'Plugins' menu in WordPress<\/li>\n<li><strong>Navigate to User Access<\/strong> in the admin sidebar<\/li>\n<li><strong>Create a login page<\/strong> by clicking \"Create Page\" in the Pages tab<\/li>\n<li><strong>Enable redirection<\/strong> (optional) to redirect wp-login.php to your custom page<\/li>\n<li><strong>Customize<\/strong> your login page content and styling as needed<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"is%20this%20plugin%20compatible%20with%20my%20theme%3F\"><h3>Is this plugin compatible with my theme?<\/h3><\/dt>\n<dd><p>Yes, Attributes User Access is designed to work with any properly coded WordPress theme. The plugin uses standard WordPress APIs and follows WordPress coding standards.<\/p><\/dd>\n<dt id=\"can%20i%20customize%20the%20login%20form%20design%3F\"><h3>Can I customize the login form design?<\/h3><\/dt>\n<dd><p>Absolutely! You have several options:<\/p>\n\n<ul>\n<li>Use custom CSS to style the form<\/li>\n<li>Override the template in your theme directory<\/li>\n<li>Use WordPress filters to modify form output<\/li>\n<li>Add custom fields using action hooks<\/li>\n<\/ul><\/dd>\n<dt id=\"does%20this%20plugin%20work%20with%20page%20caching%3F\"><h3>Does this plugin work with page caching?<\/h3><\/dt>\n<dd><p>Yes! The plugin uses WordPress transients instead of PHP sessions, making it fully compatible with page caching plugins like WP Super Cache, W3 Total Cache, and WP Rocket.<\/p><\/dd>\n<dt id=\"is%20the%20plugin%20compatible%20with%20multisite%3F\"><h3>Is the plugin compatible with multisite?<\/h3><\/dt>\n<dd><p>Yes, the plugin is multisite compatible. Each site in your network can have its own custom login pages and settings.<\/p><\/dd>\n<dt id=\"how%20do%20i%20translate%20the%20plugin%3F\"><h3>How do I translate the plugin?<\/h3><\/dt>\n<dd><p>The plugin is translation-ready. You can:<\/p>\n\n<ul>\n<li>Use the translation files in the \/languages directory<\/li>\n<li>Translate via translate.wordpress.org<\/li>\n<li>Use plugins like Loco Translate or WPML<\/li>\n<\/ul><\/dd>\n<dt id=\"does%20this%20work%20with%20two-factor%20authentication%20plugins%3F\"><h3>Does this work with two-factor authentication plugins?<\/h3><\/dt>\n<dd><p>Yes, the plugin is compatible with most two-factor authentication solutions as it uses WordPress's native authentication system.<\/p><\/dd>\n<dt id=\"how%20can%20i%20extend%20the%20plugin%20functionality%3F\"><h3>How can I extend the plugin functionality?<\/h3><\/dt>\n<dd><p>Developers can extend functionality using:<\/p>\n\n<ul>\n<li>WordPress action and filter hooks (see Developer Hooks section)<\/li>\n<li>Custom template overrides in your theme<\/li>\n<li>Extension plugins that hook into the plugin's API<\/li>\n<\/ul><\/dd>\n<dt id=\"where%20can%20i%20get%20support%3F\"><h3>Where can I get support?<\/h3><\/dt>\n<dd><p>For support, please use:<\/p>\n\n<ul>\n<li><a href=\"https:\/\/attributeswp.com\/docs\">Plugin documentation<\/a><\/li>\n<li><a href=\"https:\/\/wordpress.org\/support\/plugin\/attributes-user-access\">WordPress.org support forums<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/attributeswp\/attributes-user-access\/issues\">GitHub issues<\/a> for bug reports<\/li>\n<\/ul><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.2.2 - February 10, 2026<\/h4>\n\n<p><strong>Security &amp; Compliance:<\/strong>\n* Removed: PHP sessions in favor of WordPress transients (WordPress.org compliance)\n* Enhanced: Transient-based error message handling with automatic expiration\n* Improved: Nonce verification and security implementation\n* Updated: Security documentation to reflect current best practices<\/p>\n\n<p><strong>User Experience:<\/strong>\n* Added: Quick Settings link in plugins list page\n* Added: Documentation and Support links in plugin row meta\n* Improved: One-time use error messages prevent replay issues\n* Enhanced: Error messages now expire after 2 minutes<\/p>\n\n<p><strong>Developer:<\/strong>\n* Added: <code>attrua_action_links<\/code> filter for plugin action links\n* Added: <code>attrua_row_meta<\/code> filter for plugin row meta links\n* Enhanced: Better compatibility with load-balanced environments\n* Improved: Cache plugin compatibility<\/p>\n\n<p><strong>Documentation:<\/strong>\n* Updated: NONCE-FIX-SOLUTION.md with implementation status\n* Enhanced: Code documentation and inline comments\n* Added: WordPress.org compliance checklist<\/p>\n\n<h4>1.2.1 - December 15, 2025<\/h4>\n\n<ul>\n<li>Fix: Regenerated all minified assets from original sources<\/li>\n<li>Fix: Improved asset loading consistency across admin and frontend<\/li>\n<li>Fix: Added smart asset path resolution with fallback system<\/li>\n<li>Fix: Resolved missing admin.min.js file causing asset loading issues<\/li>\n<li>Enhancement: Optimized file sizes for better performance<\/li>\n<li>Enhancement: Enhanced production deployment readiness<\/li>\n<\/ul>\n\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>Enhancement: Improved plugin performance and stability<\/li>\n<li>Enhancement: Optimized codebase for better security<\/li>\n<li>Enhancement: Enhanced production readiness<\/li>\n<li>Enhancement: Better error handling and validation<\/li>\n<li>Enhancement: Improved code organization and structure<\/li>\n<li>Update: Comprehensive documentation updates<\/li>\n<li>Update: Enhanced user experience and reliability<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Enhancement: Added template override system for themes<\/li>\n<li>Enhancement: Improved security with better nonce validation<\/li>\n<li>Enhancement: Added custom logout handling endpoint<\/li>\n<li>Feature: New Extension Manager for add-on support<\/li>\n<li>Feature: Enhanced settings management with dot notation<\/li>\n<li>Feature: Added password visibility toggle<\/li>\n<li>Feature: Improved admin interface with notifications<\/li>\n<li>Feature: Added shortcode copying functionality<\/li>\n<li>Improvement: Better accessibility with ARIA support<\/li>\n<li>Improvement: Added dark mode support<\/li>\n<li>Improvement: Enhanced responsive design<\/li>\n<li>Improvement: Better error handling and user feedback<\/li>\n<\/ul>\n\n<h4>1.0.0 - Initial Release<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>Custom login page generation<\/li>\n<li>Role-based redirection system<\/li>\n<li>Basic shortcode functionality<\/li>\n<li>Core authentication features<\/li>\n<li>Developer hooks and filters<\/li>\n<li>Template system foundation<\/li>\n<\/ul>","raw_excerpt":"Lightweight WordPress authentication with custom login pages, role-based redirections, and secure user access control.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/nn.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/225459","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nn.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/nn.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/nn.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=225459"}],"author":[{"embeddable":true,"href":"https:\/\/nn.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/attributeswp"}],"wp:attachment":[{"href":"https:\/\/nn.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=225459"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/nn.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=225459"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/nn.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=225459"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/nn.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=225459"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/nn.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=225459"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/nn.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=225459"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}