PHPackages                             thefrosty/custom-login - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. thefrosty/custom-login

ActiveWordpress-plugin[Authentication &amp; Authorization](/categories/authentication)

thefrosty/custom-login
======================

A simple way to customize your WordPress &lt;code&gt;wp-login.php&lt;/code&gt; screen! A &lt;a href="https://frosty.media/"&gt;Frosty Media&lt;/a&gt; plugin.

5.1.2.2(5mo ago)28124↓100%9[3 issues](https://github.com/thefrosty/custom-login/issues)GPL-2.0-or-laterPHPPHP ^8.3CI passing

Since Aug 14Pushed 1mo ago4 watchersCompare

[ Source](https://github.com/thefrosty/custom-login)[ Packagist](https://packagist.org/packages/thefrosty/custom-login)[ RSS](/packages/thefrosty-custom-login/feed)WikiDiscussions develop Synced 1mo ago

READMEChangelog (10)Dependencies (19)Versions (51)Used By (0)

Custom Login
============

[](#custom-login)

[![WordPress plugin](https://camo.githubusercontent.com/3dfafad5f0d9885e91bf611f894f4a8ad02e9045d32a388a427745cf429795d9/68747470733a2f2f696d672e736869656c64732e696f2f776f726470726573732f706c7567696e2f64742f637573746f6d2d6c6f67696e2e7376673f7374796c653d666c6174)](https://wordpress.org/plugins/custom-login/)[![WordPress plugin](https://camo.githubusercontent.com/4fcd2014d613244e5e9f47b78bc26e64568a6cd68e63061e2e936236d9649ec8/68747470733a2f2f696d672e736869656c64732e696f2f776f726470726573732f706c7567696e2f762f637573746f6d2d6c6f67696e2e7376673f7374796c653d666c6174)](https://wordpress.org/plugins/custom-login/)![WordPress Plugin: Required WP Version](https://camo.githubusercontent.com/de6176a3392fc0b66d80397d4a01948b884103c5ce97b8da13b8b521dd0ba83c/68747470733a2f2f696d672e736869656c64732e696f2f776f726470726573732f706c7567696e2f77702d76657273696f6e2f637573746f6d2d6c6f67696e)![WordPress](https://camo.githubusercontent.com/4c4149c0a60bb8d3f6896c637b6809d700a376d59559e77a62c059eefa312c77/68747470733a2f2f696d672e736869656c64732e696f2f776f726470726573732f762f637573746f6d2d6c6f67696e2e7376673f7374796c653d666c6174)![WordPress Plugin Required PHP Version](https://camo.githubusercontent.com/a03531472417c85db08b0d6f69cb3018bf7fe1135fcb8adff2b7cc792d466f34/68747470733a2f2f696d672e736869656c64732e696f2f776f726470726573732f706c7567696e2f72657175697265642d7068702f637573746f6d2d6c6f67696e)[![codecov](https://camo.githubusercontent.com/9cfeee939aa18c6f4092d2c67a275e03f3ffa47830632549a5ea3325246d261a/68747470733a2f2f636f6465636f762e696f2f67682f74686566726f7374792f637573746f6d2d6c6f67696e2f6272616e63682f6d61737465722f67726170682f62616467652e7376673f746f6b656e3d3352364c4b443652424b)](https://codecov.io/gh/thefrosty/custom-login)[![License](https://camo.githubusercontent.com/e59e947b9f67c2271503c2d3b6d600b04a07ceaa780a7a4daf3a50394f1fbfd0/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d47504c2d2d322e302532422d7265642e737667)](https://github.com/thefrosty/custom-login/blob/master/license.txt)

**Contributors:** [austyfrosty](https://profiles.wordpress.org/austyfrosty), [frostymedia](https://profiles.wordpress.org/frostymedia)
**Donate link:** [PayPal](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=7431290)
**Tags:** admin, branding, customization, custom login, logo
**Requires at least:** 6.7
**Tested up to:** 6.8.3
**Requires PHP**: 8.3
**Stable tag:** 5.1.2.2
**License:** GPLv2 or later
**License URI:**

Custom Login allows you to easily customize your admin login page, works great for client sites!

Description
-----------

[](#description)

Custom Login 2.0 was 140% faster than version 1.0, and version 4.0 is now even better!

> NOTE: For version 5, this plugin should be installed via composer or from WordPress only. If you are not running PHP 8.3, grab the php74 release asset.

For more information, visit the official [Custom Login](https://frosty.media/plugins/custom-login/) page.

> **Support**
> [Austin](https://austin.passy.co) and the [Frosty Media](https://frosty.media/) team will always try our best to support the Custom Login plugin on the WordPress.org forum, but please note that we cannot guarantee a response in a timely manner. If you have an issue we would appreciate you using GitHub or purchasing priority support on our site.
>
> Any extensions purchased on [Frosty Media](https://frosty.media/) (not hosted on WordPress.org) will not be supported on the WordPress.org forum. You can always browse our *small* but growing [documentation](https://frosty.media/docs) for further assistance. You need a valid license key to make support submissions *on our site*. We thank you in advance.

> **Bug Reports**
> Bug reports for Custom Login are [welcomed on GitHub](https://github.com/thefrosty/custom-login).

### Video

[](#video)

[![Custom Login v3.0](https://camo.githubusercontent.com/bd5b4177e79d81f713fe6dc5d9b7f701c2b488cdc4c7e290c1d3eb63b5b56bb7/68747470733a2f2f696d672e796f75747562652e636f6d2f76692f685a6b632d7433367859512f302e6a7067)](https://www.youtube.com/watch?v=hZkc-t36xYQ)

### Extensions

[](#extensions)

There are currently 7 premium extensions available, with more coming (suggestions welcome - and *will be offered for free to said user*).

**Extensions available now**

- [Stealth Login](https://frosty.media/plugins/custom-login-stealth-login/?utm_source=wordpressorg&utm_medium=custom-login&utm_campaign=readme.txt "Custom Login Stealth Login")
    - obscure your login URL.
- [Page Template](https://frosty.media/plugins/custom-login-page-template/?utm_source=wordpressorg&utm_medium=custom-login&utm_campaign=readme.txt "Custom Login Page Template")
    - add a login form to any WordPress page.
- [Login Redirects](https://frosty.media/plugins/custom-login-redirects/?utm_source=wordpressorg&utm_medium=custom-login&utm_campaign=readme.txt "Custom Login Redirects")
    - Manage login redirects.
- [No Password](https://frosty.media/plugins/custom-login-no-password-login/?utm_source=wordpressorg&utm_medium=custom-login&utm_campaign=readme.txt "Custom Login No Password logins")
    - allow users to login without a password.
- [Style Pack #1](https://frosty.media/plugins/custom-login-style-pack-1?utm_source=wordpressorg&utm_medium=custom-login&utm_campaign=readme.txt "Custom Login Style Pack #1") ⭐️
    - four pre-designed login styles.
- [Style Pack #2](https://frosty.media/plugins/custom-login-style-pack-2?utm_source=wordpressorg&utm_medium=custom-login&utm_campaign=readme.txt "Custom Login Style Pack #2") ⭐️
    - four pre-designed fun login styles.
- [Style Pack #3](https://frosty.media/plugins/custom-login-style-pack-3?utm_source=wordpressorg&utm_medium=custom-login&utm_campaign=readme.txt "Custom Login Style Pack #3") ⭐️
    - four pre-designed holiday login styles.

**Extensions in development/extension ideas**

- Email Logins for usernames.
- 2-step Authentication.
- "Super User" only access for client sites.
- **Added in core as of version 3.0** Remove default WordPress login CSS.
- Submit button styles!
- **Added as of version 3.2** Custom Login pre-made settings templates \* AKA\* [Style Packs](https://frosty.media/plugin/tag/style-pack/).

### More info

[](#more-info)

Activate the plugin and customize your WordPress login screen. It's as easy as modifying a few settings, there is no need to understand CSS at all. Custom Login even has a HTML, CSS &amp; jQuery textarea for more advanced customizations.

1. **Read more about [Custom Login 5.0](https://frosty.media/2025/custom-login-5-0-released/)**
2. Read more about [Custom Login 4.2 &amp; 4.3](https://frosty.media/2025/custom-login-4-3-released/)
3. Read more about [Custom Login 4.0](https://frosty.media/2022/custom-login-4-0-x-released/)
4. Read more about [Custom Login 3.1](https://frosty.media/2015/custom-login-v3-1-released/)

**For those looking to show off your login screen, check out the [Flickr group](https://flickr.com/groups/custom-login/)! Share you designs with the community!**

### links

[](#links)

- Additional Plugins: [https://frosty.media/plugins](https://frosty.media/plugins/ "Premium WordPress Plugins by Frosty")
- Austins Blog: [https:/austin.passy.co/](https://austin.passy.co/ "Austin's blog")
- Austin on Twitter: [@TheFrosty](https:/x.com/TheFrosty "Austin on X (Twitter)")
- Frosty Media on Twitter: [@Frosty\_Media](https:/x.com/Frosty_Media "Frosty Media on X (Twitter)")
- Development welcomed on **[GitHub](https://github.com/thefrosty/custom-login)**

Installation
------------

[](#installation)

Installation via composer:

```
composer require thefrosty/custom-login:^5
```

Or, follow the steps below to install the plugin.

1. Upload the `custom-login` directory to the /wp-content/plugins/ directory.
2. Activate the plugin through the 'plugins' menu in WordPress.
3. Go to Settings/custom-login to edit your settings.
4. Design away.
5. Activate the settings by checking "Enable" in the "General Settings" tab.

Frequently Asked Questions
--------------------------

[](#frequently-asked-questions)

### What are extensions?

[](#what-are-extensions)

They are additional plugins that add/extend functionality to the Custom Login plugin. You can find all Custom Login extensions on [Frosty.Media](https://frosty.media).

### Is there a PRO version?

[](#is-there-a-pro-version)

Not anymore.

### Where can I upload and share my cool login screen?

[](#where-can-i-upload-and-share-my-cool-login-screen)

Check out the [Flickr group](https://flickr.com/groups/custom-login/)! Upload and add it to our pool!

### I think I want to uninstall

[](#i-think-i-want-to-uninstall)

Just deactivate it. Sad panda is sad.

### Where do I report security bugs found in this plugin?

[](#where-do-i-report-security-bugs-found-in-this-plugin)

Please report security bugs found in the source code of the Custom Login plugin through the [Patchstack Vulnerability Disclosure Program](https://patchstack.com/database/vdp/custom-login). The Patchstack team will assist you with verification, CVE assignment, and notify the developers of this plugin.

Screenshots
-----------

[](#screenshots)

Custom Login showcase on the [Flickr group](https://flickr.com/groups/custom-login/).

### 1. Custom Login v3 Design Settings part 1.

[](#1-custom-login-v3-design-settings-part-1)

[![Custom Login v3 Design Settings part 1. ](https://camo.githubusercontent.com/36463f02157ee44dce03c08c14d1f751d5e2fa957d7e523fc5b1f1ca8af7c561/68747470733a2f2f70732e772e6f72672f637573746f6d2d6c6f67696e2f6173736574732f73637265656e73686f742d312e706e67)](https://camo.githubusercontent.com/36463f02157ee44dce03c08c14d1f751d5e2fa957d7e523fc5b1f1ca8af7c561/68747470733a2f2f70732e772e6f72672f637573746f6d2d6c6f67696e2f6173736574732f73637265656e73686f742d312e706e67)

### 2. Custom Login v3 Design Settings part 2.

[](#2-custom-login-v3-design-settings-part-2)

[![Custom Login v3 Design Settings part 2. ](https://camo.githubusercontent.com/971669f977107e2631be5ca209dbcd19adfa3ab194a74f65e42bcd63c14c2af0/68747470733a2f2f70732e772e6f72672f637573746f6d2d6c6f67696e2f6173736574732f73637265656e73686f742d322e706e67)](https://camo.githubusercontent.com/971669f977107e2631be5ca209dbcd19adfa3ab194a74f65e42bcd63c14c2af0/68747470733a2f2f70732e772e6f72672f637573746f6d2d6c6f67696e2f6173736574732f73637265656e73686f742d322e706e67)

### 3. Custom Login v3 General Settings.

[](#3-custom-login-v3-general-settings)

[![Custom Login v3 General Settings. ](https://camo.githubusercontent.com/c7111e1c8ac567c2679df207cfa87968988eb57f2f8b90a84ca6f400e43b1207/68747470733a2f2f70732e772e6f72672f637573746f6d2d6c6f67696e2f6173736574732f73637265656e73686f742d332e706e67)](https://camo.githubusercontent.com/c7111e1c8ac567c2679df207cfa87968988eb57f2f8b90a84ca6f400e43b1207/68747470733a2f2f70732e772e6f72672f637573746f6d2d6c6f67696e2f6173736574732f73637265656e73686f742d332e706e67)

### 4. Custom Login Extensions Installer (an active license key is required).

[](#4-custom-login-extensions-installer-an-active-license-key-is-required)

[![Custom Login Extensions Installer (an active license key is required). ](https://camo.githubusercontent.com/bb74b3ee6551a0c507c9b2c551232c121f92417304b67efd3dd2fe99ab7cf061/68747470733a2f2f70732e772e6f72672f637573746f6d2d6c6f67696e2f6173736574732f73637265656e73686f742d342e706e67)](https://camo.githubusercontent.com/bb74b3ee6551a0c507c9b2c551232c121f92417304b67efd3dd2fe99ab7cf061/68747470733a2f2f70732e772e6f72672f637573746f6d2d6c6f67696e2f6173736574732f73637265656e73686f742d342e706e67)

Changelog
---------

[](#changelog)

### Version 5.1.2.2 (2025/11/29) =

[](#version-5122-20251129-)

- Upstream dependency updates from thefrosty/wp-utilities.
- Don't load vendor/autoload.php if already autoloaded externally.

### Version 5.1.2.1 (2025/11/23) =

[](#version-5121-20251123-)

- Fix edge case Fatal error found in legacy plugins using Hash from thefrosty/wp-utilities update.

### Version 5.1.2 (2025/11/22) =

[](#version-512-20251122-)

- Bump thefrosty/wp-utilities.

### Version 5.1.1 (2025/11/14) =

[](#version-511-20251114-)

- Resolve `gettext` mixed type fatal error.

### Version 5.1.0 (2025/11/14) =

[](#version-510-20251114-)

- Bump js-yaml and standard by @dependabot\[bot\]
- Feature: Add Login style ![]() with `srcset` for responsive image backgrounds.

### Version 5.0.2 (2025/10/11) =

[](#version-502-20251011-)

- Remove `roave/security-advisories` (due to political support on their README I don't agree with).

### Version 5.0.1 (2025/07/16)

[](#version-501-20250716)

- Fix: export-ignore for Composer installs.
- Bump PHPUnit to 11.
- Change Requires PHP back to 8.3 (modified in downgrade action)

### Version 5.0.0 (2025/07/15)

[](#version-500-20250715)

- Tested up to 6.8.2
- Bumped dependencies for PHP &gt;= 8.3.
- Dropped plugin PHP support back to &gt;= 7.4 (WordPress install) with Rector.
- Add better Composer installation support, requires PHP &gt;= 8.3.

### Version 4.5.2 (2025/06/10)

[](#version-452-20250610)

- Bump WP Utilities to 3.4.3
- Resolve dashboard visibility no hiding on setting toggle.
- Update default remote request timeout from 15 to 2 seconds.

### Version 4.5.1 (2025/05/20)

[](#version-451-20250520)

- Only load Import/Export on Custom Login Settings page.

### Version 4.5.0 (2025/05/14)

[](#version-450-20250514)

- Add `roave/security-advisories`
- Update codecov-action to v5
- Setting: Expose Extensions Submenu
- 🔄 Regenerate translation files
- Readme Updates
- Update references from Twitter to X.
- Hide "active" Custom Login Extensions from the plugins.php page
- Bug: Fix Codemirror syntax issue

### Version 4.4.0 (2025/04/14)

[](#version-440-20250414)

- Requires PHP &gt;= 8.1.
- Bump Tested up to too "6.8.0".
- Resolve "Translation loading for the custom-login domain was triggered too early" added in WP 6.7.0.

### Version 4.3.0 (2024/10/30)

[](#version-430-20241030)

- Bump Tested up to too "6.7.0"
- Updated login logo HTML attribute for CSS targeting in WP 6.7.

### Version 4.2.0 (2024/04/25)

[](#version-420-20240425)

- Bump Tested up to too "6.5.2"
- Resolve possible "Uncaught TypeError" when initializing wp.codeEditor on empty element.
- Development enhancements.

### Version 4.1.1 (2023/12/13)

[](#version-411-20231213)

- Resolve Security Vulnerability (CVE-2023-49858).

### Version 4.1.0 (2023/11/09)

[](#version-410-20231109)

- Drop support for PHP &lt;= 7.4.
- Resolve PHP deprecation notices in PHP 8.2.
- Official supported WordPress is &gt;= 6.2.
- Tested with WordPress 6.4.
- Remove deprecated function `CUSTOMLOGIN()`.
- Fix: resolve use of path instead of URL for animate.css.

### Version 4.0.12 (2023/12/13)

[](#version-4012-20231213)

- Resolve Security Vulnerability (CVE-2023-49858).

### Version 4.0.11 (2023/09/20)

[](#version-4011-20230920)

- Fix: Removed Opis Closure package (causing PHP deprecation notices in 8.1+).

### Version 4.0.10 (2023/04/08)

[](#version-4010-20230408)

- Fix: Uninitialized value.

### Version 4.0.9 (2023/03/31)

[](#version-409-20230331)

- Fix: Resolve edge case error on setting page.

### Version 4.0.8 (2022/08/11)

[](#version-408-20220811)

- Fix: Make sure WordPress' capabilities array keys are string values to avoid `shutdown` action fatal errors.

### Version 4.0.7 (2022/08/09)

[](#version-407-20220809)

- Don't type cast the return value of removeLostPasswordText. [\#75](https://github.com/thefrosty/custom-login/pull/75)
- Uncomment update option to resolve upgrade notice always showing. [\#76](https://github.com/thefrosty/custom-login/pull/76)
- Don't show the tracking notice, when opt-in or opt-out has already been selected. [\#77](https://github.com/thefrosty/custom-login/pull/77)
- Update WpSettingsApi, and use new condition checks for sidebar(s). [\#78](https://github.com/thefrosty/custom-login/pull/78)
- Update missing autoload notice message. [\#80](https://github.com/thefrosty/custom-login/pull/80)

### Version 4.0.6 (2022/08/08)

[](#version-406-20220808)

- Fix: Resolve micro regression with `psr/container` issues.
- Fix: Resolve file (URL) fields breaking on save.
- Update WP Utilities to 2.8.
- Update WP Settings API to 3.6.

### Version 4.0.5 (2022/08/06)

[](#version-405-20220806)

- Make sure autoloading is working before loading classes on plugin uninstall.
- Full Changelog: [4.0.4...4.0.5](https://github.com/thefrosty/custom-login/compare/4.0.4...4.0.5)

### Version 4.0.4 (2022/08/05)

[](#version-404-20220805)

- Change PSR Container package to use version 1 instead of 2 to avoid WooCommerce errors; fixes [\#65](https://github.com/thefrosty/custom-login/issues/65)
- Full Changelog: [4.0.3...4.0.4](https://github.com/thefrosty/custom-login/compare/4.0.3...4.0.4)

### Version 4.0.3 (2022/08/04)

[](#version-403-20220804)

- Update both README's with correct "requires at least", "tested up to", and "requires PHP" header tags.
- Cleanup admin notice messages when "unable to activate" due to invalid PHP version or missing autoload.
- Full Changelog: [4.0.2...4.0.3](https://github.com/thefrosty/custom-login/compare/4.0.2...4.0.3)

### Version 4.0.2 (2022/07/15)

[](#version-402-20220715)

- Don't show error message when not in admin.

### Version 4.0.1 (2022/05/23)

[](#version-401-20220523)

- Version bump, including manually adding missing vendor directory (need to fix GitHub action).

### Version 4.0.0 (2022/05/23)

[](#version-400-20220523)

- Complete rewrite.
- Required PHP &gt;= 7.4.
- Full Changelog: [3.2.15...4.0.0](https://github.com/thefrosty/custom-login/compare/3.2.15...4.0.0)

### Version 3.2.15 (2022/03/11)

[](#version-3215-20220311)

- Fix settings API Settings: Uncaught Error: Call to undefined method stdClass::get\_permalink() (#49)

Upgrade Notice
--------------

[](#upgrade-notice)

### 4.4.0

[](#440)

Requires WordPress version &gt;= 6.6 and PHP version &gt;= 8.1.

### 4.1.0

[](#410)

Requires WordPress version &gt;= 6.2 and PHP version &gt;= 8.0.

### 4.0.1

[](#401)

Requires WordPress version &gt;= 5.7 and PHP version &gt;= 7.4.

###  Health Score

56

—

FairBetter than 97% of packages

Maintenance85

Actively maintained with recent releases

Popularity25

Limited adoption so far

Community18

Small or concentrated contributor base

Maturity83

Battle-tested with a long release history

 Bus Factor1

Top contributor holds 95.7% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~46 days

Recently: every ~3 days

Total

43

Last Release

161d ago

Major Versions

3.2.15 → 4.0.0-RC12022-05-23

4.5.2 → 5.0.02025-07-15

PHP version history (4 changes)4.0.0-RC1PHP ^7.4 || ^8.0

4.1.0PHP ^8.0

4.4.0PHP ^8.1

5.0.0PHP ^8.3

### Community

Maintainers

![](https://www.gravatar.com/avatar/9297f4f4d23d5528e50d33af9d3f79bcfe7900dfdda17993be767157098f58bb?d=identicon)[thefrosty](/maintainers/thefrosty)

---

Top Contributors

[![thefrosty](https://avatars.githubusercontent.com/u/367897?v=4)](https://github.com/thefrosty "thefrosty (470 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (11 commits)")[![github-actions[bot]](https://avatars.githubusercontent.com/in/15368?v=4)](https://github.com/github-actions[bot] "github-actions[bot] (8 commits)")[![chuckreynolds](https://avatars.githubusercontent.com/u/46185?v=4)](https://github.com/chuckreynolds "chuckreynolds (1 commits)")[![elliot-huffman](https://avatars.githubusercontent.com/u/5030490?v=4)](https://github.com/elliot-huffman "elliot-huffman (1 commits)")

---

Tags

custom-loginloginlogowordpresswordpress-plugin

###  Code Quality

TestsPHPUnit

Static AnalysisRector

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/thefrosty-custom-login/health.svg)

```
[![Health](https://phpackages.com/badges/thefrosty-custom-login/health.svg)](https://phpackages.com/packages/thefrosty-custom-login)
```

###  Alternatives

[cnam/security-jwt-service-provider

Service Provider for usage jwt token for auth

60108.1k2](/packages/cnam-security-jwt-service-provider)[simplesamlphp/simplesamlphp-module-oidc

A SimpleSAMLphp module adding support for the OpenID Connect protocol

5016.9k1](/packages/simplesamlphp-simplesamlphp-module-oidc)[oidc/core

OpenID Connect Core Library implementation for PHP

14110.9k](/packages/oidc-core)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
