{"id":880,"date":"2008-01-07T20:58:19","date_gmt":"2008-01-07T20:58:19","guid":{"rendered":"https:\/\/wordpress.org\/plugins-wp\/bm-custom-login\/"},"modified":"2026-03-03T23:25:14","modified_gmt":"2026-03-03T23:25:14","slug":"bm-custom-login","status":"publish","type":"plugin","link":"https:\/\/jv.wordpress.org\/plugins\/bm-custom-login\/","author":21092980,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"3.0.0","stable_tag":"3.0.0","tested":"6.9.4","requires":"6.6","requires_php":"7.4","requires_plugins":null,"header_name":"WP Custom Login","header_author":"Teydea Studio","header_description":"","assets_banners_color":"fdfdfd","last_updated":"2026-03-03 23:25:14","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wpcustomlogin.com\/?utm_source=WP+Custom+Login","header_author_uri":"https:\/\/teydeastudio.com\/?utm_source=WP+Custom+Login","rating":4.5,"author_block_rating":0,"active_installs":10000,"downloads":513666,"num_ratings":14,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"2.4.0":{"tag":"2.4.0","author":"teydeastudio","date":"2024-10-16 19:57:31"},"3.0.0":{"tag":"3.0.0","author":"teydeastudio","date":"2026-03-03 23:25:14"}},"upgrade_notice":[],"ratings":{"1":"1","2":"1","3":0,"4":0,"5":"13"},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3474062,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3474062,"resolution":"256x256","location":"assets","locale":""},"icon.svg":{"filename":"icon.svg","revision":3474062,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.jpg":{"filename":"banner-1544x500.jpg","revision":3474062,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.jpg":{"filename":"banner-772x250.jpg","revision":3474062,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["2.4.0","3.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3474062,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3474062,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3474062,"resolution":"3","location":"assets","locale":""},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3474062,"resolution":"4","location":"assets","locale":""},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3474062,"resolution":"5","location":"assets","locale":""}},"screenshots":{"1":"The settings page with the Design tab open, showing all customizable elements and a live preview of the login page.","2":"Background and form container settings with color picker and background image options.","3":"The Functionality tab with options to disable autofocus, autocomplete, and the login error shake effect.","4":"Under-form links settings with custom link management, text alignment, separator, and color options.","5":"Primary button styling with color controls for normal, hover, and focus states, plus font family and weight options."},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[2604,3691,41128,8570,5574],"plugin_category":[38,43],"plugin_contributors":[162490,78702,223836],"plugin_business_model":[],"class_list":["post-880","plugin","type-plugin","status-publish","hentry","plugin_tags-branding","plugin_tags-custom-login","plugin_tags-login-customizer","plugin_tags-login-logo","plugin_tags-login-page","plugin_category-authentication","plugin_category-customization","plugin_contributors-bartoszgadomski","plugin_contributors-binarymoon","plugin_contributors-teydeastudio","plugin_committers-teydeastudio","plugin_support_reps-bartoszgadomski"],"banners":{"banner":"https:\/\/ps.w.org\/bm-custom-login\/assets\/banner-772x250.jpg?rev=3474062","banner_2x":"https:\/\/ps.w.org\/bm-custom-login\/assets\/banner-1544x500.jpg?rev=3474062","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/bm-custom-login\/assets\/icon.svg?rev=3474062","icon":"https:\/\/ps.w.org\/bm-custom-login\/assets\/icon.svg?rev=3474062","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/bm-custom-login\/assets\/screenshot-1.png?rev=3474062","caption":"The settings page with the Design tab open, showing all customizable elements and a live preview of the login page."},{"src":"https:\/\/ps.w.org\/bm-custom-login\/assets\/screenshot-2.png?rev=3474062","caption":"Background and form container settings with color picker and background image options."},{"src":"https:\/\/ps.w.org\/bm-custom-login\/assets\/screenshot-3.png?rev=3474062","caption":"The Functionality tab with options to disable autofocus, autocomplete, and the login error shake effect."},{"src":"https:\/\/ps.w.org\/bm-custom-login\/assets\/screenshot-4.png?rev=3474062","caption":"Under-form links settings with custom link management, text alignment, separator, and color options."},{"src":"https:\/\/ps.w.org\/bm-custom-login\/assets\/screenshot-5.png?rev=3474062","caption":"Primary button styling with color controls for normal, hover, and focus states, plus font family and weight options."}],"raw_content":"<!--section=description-->\n<p><strong>WP Custom Login lets you fully customize the WordPress login page to match your brand identity.<\/strong><\/p>\n\n<p>Whether you run a single site or a multisite network, this plugin gives you control over every visual element of the login screen -- from the logo and background to form fields, buttons, links, and more.<\/p>\n\n<p><strong>Key benefits:<\/strong><\/p>\n\n<ul>\n<li>Adjust colors, fonts, spacing, and layout of every login page element without writing CSS.<\/li>\n<li>Add your logo, social media links, and custom footer to create a branded login experience.<\/li>\n<li>Support for multilingual sites with per-language text customization for labels, buttons, and notices.<\/li>\n<li>Works with WordPress multisite networks for consistent branding across all sites.<\/li>\n<\/ul>\n\n<p>WP Custom Login is a good fit for freelancers, agencies, and organizations that want a professional, branded login page. It includes a live preview in the admin settings, so you can see your changes before they go live.<\/p>\n\n<p>Learn more at <a href=\"https:\/\/wpcustomlogin.com\/?utm_source=WP+Custom+Login\">wpcustomlogin.com<\/a>.<\/p>\n\n<h3>Features<\/h3>\n\n<h4>Free Features<\/h4>\n\n<ul>\n<li><strong>Body background color<\/strong> -- Set a custom background color for the login page.<\/li>\n<li><strong>Custom logo<\/strong> -- Replace the WordPress logo with your site icon or a custom image, and configure its link URL and alignment.<\/li>\n<li><strong>Form container styling<\/strong> -- Customize the form background color, border radius, padding, box shadow, and alignment.<\/li>\n<li><strong>Label styling<\/strong> -- Adjust font size, weight, letter case, spacing, text color, and toggle label visibility.<\/li>\n<li><strong>Input field styling<\/strong> -- Set background colors, borders, padding, font, shadow, and placeholder text for normal, hover, and focus states.<\/li>\n<li><strong>Checkbox styling<\/strong> -- Apply custom colors to the login form checkboxes and checkmark icon.<\/li>\n<li><strong>Primary button styling<\/strong> -- Customize colors, font, size, width, alignment, shadow, and per-language button labels.<\/li>\n<li><strong>Secondary button styling<\/strong> -- Configure colors, font, border, and per-language labels for secondary buttons.<\/li>\n<li><strong>Notice and error styling<\/strong> -- Set colors for error, notice, and success messages, and add a custom persistent notice with per-language text.<\/li>\n<li><strong>Under-form links<\/strong> -- Customize link colors, separator, disable the \"Back to\" link, or add custom links.<\/li>\n<li><strong>Social media icons<\/strong> -- Display up to 23 social media icon links (Facebook, X, Instagram, LinkedIn, YouTube, GitHub, and more), placed before the form, after the form, or in the footer.<\/li>\n<li><strong>Privacy policy link<\/strong> -- Show or hide the privacy policy link and set its color.<\/li>\n<li><strong>Language switcher<\/strong> -- Show or hide the WordPress language switcher and adjust its icon color and spacing.<\/li>\n<li><strong>Custom footer<\/strong> -- Add a footer with configurable text, font, color, and alignment.<\/li>\n<li><strong>Custom CSS<\/strong> -- Add your own CSS for additional styling.<\/li>\n<li><strong>Live preview<\/strong> -- See your changes in real time within the admin settings page.<\/li>\n<li><strong>Disable autofocus<\/strong> -- Turn off the default autofocus behavior on the login form.<\/li>\n<li><strong>Disable error shake<\/strong> -- Turn off the shake animation on failed login attempts.<\/li>\n<li><strong>Disable autocomplete<\/strong> -- Prevent browsers from auto-filling the login form.<\/li>\n<li><strong>Per-language text<\/strong> -- Customize labels, placeholders, button text, and notices for each language on multilingual sites.<\/li>\n<li><strong>\"Remember Me\" customization<\/strong> -- Show or hide the \"Remember Me\" checkbox and set custom label text per language.<\/li>\n<\/ul>\n\n<h4>PRO Features<\/h4>\n\n<ul>\n<li><strong><a href=\"https:\/\/wpcustomlogin.com\/?utm_source=WP+Custom+Login\">Pre-designed templates<\/a><\/strong> -- Choose from 20+ ready-made login page designs and apply them with one click.<\/li>\n<li><strong><a href=\"https:\/\/wpcustomlogin.com\/?utm_source=WP+Custom+Login\">Advanced backgrounds<\/a><\/strong> -- Use animated gradients, image slideshows, or split-screen layouts as your login page background.<\/li>\n<li><strong><a href=\"https:\/\/wpcustomlogin.com\/?utm_source=WP+Custom+Login\">Post-login redirects<\/a><\/strong> -- Redirect users to specific pages after login based on their roles.<\/li>\n<li><strong><a href=\"https:\/\/wpcustomlogin.com\/?utm_source=WP+Custom+Login\">Premium support<\/a><\/strong> -- Get direct support from the development team.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>bm-custom-login<\/code> directory to <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate the plugin through the \"Plugins\" menu in WordPress.<\/li>\n<li>Go to \"Settings\" &gt; \"WP Custom Login\" to open the settings page.<\/li>\n<li>Use the visual controls to customize your login page. Changes are shown in the live preview on the right side of the settings page.<\/li>\n<li>Save your settings. Your customized login page is now live.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"how%20do%20i%20access%20the%20settings%3F\"><h3>How do I access the settings?<\/h3><\/dt>\n<dd><p>After activation, go to \"Settings\" &gt; \"WP Custom Login\" in the WordPress admin. The settings page provides visual controls for every element of the login page, along with a live preview.<\/p><\/dd>\n<dt id=\"does%20this%20plugin%20work%20with%20wordpress%20multisite%3F\"><h3>Does this plugin work with WordPress multisite?<\/h3><\/dt>\n<dd><p>Yes. WP Custom Login supports WordPress multisite networks and can be activated network-wide. Each site in the network can have its own login page customization.<\/p><\/dd>\n<dt id=\"can%20i%20customize%20login%20page%20text%20for%20multiple%20languages%3F\"><h3>Can I customize login page text for multiple languages?<\/h3><\/dt>\n<dd><p>Yes. Labels, placeholders, button text, and custom notices all support per-language configuration. This is useful if your site serves visitors in more than one language.<\/p><\/dd>\n<dt id=\"will%20my%20customizations%20be%20lost%20if%20i%20update%20the%20plugin%3F\"><h3>Will my customizations be lost if I update the plugin?<\/h3><\/dt>\n<dd><p>No. All your settings are stored in the WordPress database and are not affected by plugin updates.<\/p><\/dd>\n<dt id=\"what%20is%20the%20difference%20between%20the%20free%20and%20pro%20versions%3F\"><h3>What is the difference between the free and PRO versions?<\/h3><\/dt>\n<dd><p>The free version gives you full control over colors, fonts, layout, logo, social icons, and form styling. The PRO version adds pre-designed templates, advanced background options (animated gradients, slideshows, split-screen), post-login redirects by user role, and premium support. See the <a href=\"https:\/\/wpcustomlogin.com\/pricing\/?utm_source=WP+Custom+Login\">pricing page<\/a> for details.<\/p><\/dd>\n<dt id=\"can%20i%20add%20custom%20css%20to%20the%20login%20page%3F\"><h3>Can I add custom CSS to the login page?<\/h3><\/dt>\n<dd><p>Yes. The settings page includes a custom CSS field where you can add any additional styles that go beyond what the visual controls offer.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>3.0.0 (2026-02-16)<\/h4>\n\n<ul>\n<li>Complete plugin rebuild with a modern, React-based settings page and live preview<\/li>\n<li>Add granular styling controls for form container, labels, input fields, checkboxes, and buttons (including separate hover and focus states)<\/li>\n<li>Add primary and secondary button customization with font, color, size, width, and alignment options<\/li>\n<li>Add notice and error message styling with support for custom persistent notices<\/li>\n<li>Add social media icon links (23 platforms) with configurable placement<\/li>\n<li>Add under-form link customization with custom links, separator styling, and option to disable the \"Back to\" link<\/li>\n<li>Add custom footer with configurable text, font, color, and alignment<\/li>\n<li>Add privacy policy link and language switcher visibility and styling controls<\/li>\n<li>Add \"Remember Me\" checkbox show\/hide toggle with custom label text<\/li>\n<li>Add per-language text customization for labels, placeholders, button text, and notices<\/li>\n<li>Add functionality options: disable autofocus, disable error shake, disable autocomplete<\/li>\n<li>Add logo alignment, link configuration, and site icon as logo source option<\/li>\n<li>Improve background image controls with focal point, size, and repeat options<\/li>\n<li>Migrate existing settings from previous versions automatically<\/li>\n<\/ul>\n\n<h4>2.4.0 (2024-10-16)<\/h4>\n\n<ul>\n<li>Create changelog.txt file and add all missing records<\/li>\n<li>Update readme.txt file, list of contributors, tags, and the plugin author data<\/li>\n<li>Remove promotional contents<\/li>\n<li>Drop csstidy entirely and use similar approach for css sanitization as in WordPress core<\/li>\n<li>Remove invalid plugin uri header<\/li>\n<li>Bump tested-up-to version to WordPress 6.6<\/li>\n<li>Fix security issues<\/li>\n<li>Load plugin stylesheet through <code>login_enqueue_scripts<\/code> hook<\/li>\n<\/ul>\n\n<h4>2.3.2 (2021-07-14)<\/h4>\n\n<ul>\n<li>Fix errant comma that caused a 500 error on some servers<\/li>\n<\/ul>\n\n<h4>2.3.1 (2021-07-13)<\/h4>\n\n<ul>\n<li>Fix PHP error for missing settings<\/li>\n<\/ul>\n\n<h4>2.3 (2021-03-09)<\/h4>\n\n<ul>\n<li>Display the \"powered by\" text underneath the login form to ensure it is visible. It can be targetted with CSS using <code>.cl-powered-by<\/code><\/li>\n<\/ul>\n\n<h4>2.2.5 (2020-06-17)<\/h4>\n\n<ul>\n<li>Fix implode parameter order<\/li>\n<\/ul>\n\n<h4>2.2.4 (2020-03-05)<\/h4>\n\n<ul>\n<li>Update CSSTidy to latest version<\/li>\n<\/ul>\n\n<h4>2.2.3 (2019-08-23)<\/h4>\n\n<ul>\n<li>Switch to submit_button function for settings form<\/li>\n<\/ul>\n\n<h4>2.2.2 (2019-04-30)<\/h4>\n\n<ul>\n<li>Replace deprecated filter<\/li>\n<li>Update coding standards<\/li>\n<\/ul>\n\n<h4>2.2.1 (2017-12-01)<\/h4>\n\n<ul>\n<li>Remove text shadow on login button so that it's more consistently readable<\/li>\n<li>Make it clearer what the text link colour changes<\/li>\n<li>Change CSS label to match the core customizer label<\/li>\n<li>Remove CSS vendor prefixes that are no longer needed<\/li>\n<\/ul>\n\n<p>(For older records, see the <code>changelog.txt<\/code> file).<\/p>","raw_excerpt":"Customize the WordPress login screen with your own colors, logo, backgrounds, and form styles.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/880","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=880"}],"author":[{"embeddable":true,"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/teydeastudio"}],"wp:attachment":[{"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=880"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=880"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=880"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=880"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=880"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=880"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}