{"id":301624,"date":"2026-05-10T05:21:01","date_gmt":"2026-05-10T05:21:01","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/effortless-personalized-login-logo\/"},"modified":"2026-05-21T05:57:35","modified_gmt":"2026-05-21T05:57:35","slug":"effortless-personalized-login-logo","status":"publish","type":"plugin","link":"https:\/\/ug.wordpress.org\/plugins\/effortless-personalized-login-logo\/","author":23148025,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.14","stable_tag":"1.0.14","tested":"7.0","requires":"6.2","requires_php":"7.2","requires_plugins":null,"header_name":"Effortless Personalized Login Logo","header_author":"domclic","header_description":"Effortlessly display your site logo on the WordPress login screen. Reads the Site Logo from Site Identity \u2014 no configuration needed.","assets_banners_color":"","last_updated":"2026-05-21 05:57:35","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":102,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.12":{"tag":"1.0.12","author":"domclic","date":"2026-05-10 05:22:27"},"1.0.14":{"tag":"1.0.14","author":"domclic","date":"2026-05-21 05:57:35"}},"upgrade_notice":{"1.0.14":"<p>Docs fix: &quot;Tested up to&quot; corrected to 7.0 and description updated to reflect zero-config behavior. No functional changes.<\/p>","1.0.13":"<p>Maintenance release. No functional changes.<\/p>","1.0.12":"<p>CSS fix: logo now reliably overrides WordPress core styles and is constrained to 320px wide on desktop, responsive on mobile. Recommended upgrade.<\/p>","1.0.11":"<p>Documentation update for block theme users: clarifies how to set the Site Logo when Appearance \u2192 Customize is not available in the menu.<\/p>","1.0.10":"<p>Refactor to properly enqueue login CSS and JS via WordPress core APIs. No user-facing changes.<\/p>","1.0.9":"<p>Documentation and code formatting fixes. No functional changes.<\/p>","1.0.8":"<p>Subtle prompt added to login page when no site logo is set.<\/p>","1.0.7":"<p>Now auto-uses Site Logo from Customizer \u2014 no configuration needed.<\/p>","1.0.6":"<p>Fixed uninstall.php to use WP_UNINSTALL_PLUGIN constant.<\/p>","1.0.5":"<p>Cleanup of uninstall script.<\/p>","1.0.4":"<p>Proper cleanup of settings on plugin deletion.<\/p>","1.0.3":"<p>ABSPATH protection added and tested up to WP 6.9.<\/p>","1.0.2":"<p>Code cleanup and minor logic simplifications.<\/p>","1.0.1":"<p>Security and i18n improvements. Upgrade recommended.<\/p>","1.0.0":"<p>First stable version. Compatible with WordPress 6.5 login layout.<\/p>"},"ratings":[],"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.12","1.0.14"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[83,2604,2759,602,3821],"plugin_category":[38,43,50],"plugin_contributors":[241557],"plugin_business_model":[],"class_list":["post-301624","plugin","type-plugin","status-publish","hentry","plugin_tags-admin","plugin_tags-branding","plugin_tags-customization","plugin_tags-login","plugin_tags-logo","plugin_category-authentication","plugin_category-customization","plugin_category-media","plugin_contributors-domclic","plugin_committers-domclic"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/effortless-personalized-login-logo.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p>This plugin automatically displays your Site Logo on the WordPress login screen. It reads the logo you have set under Appearance \u2192 Customize \u2192 Site Identity \u2014 no settings page, no extra configuration needed.<\/p>\n\n<h4>Features<\/h4>\n\n<ul>\n<li>Zero-configuration: reads your Site Logo automatically<\/li>\n<li>Automatically applies the correct size and styling<\/li>\n<li>Works with WordPress 6.2+ markup<\/li>\n<li>Keeps the login screen clean and branded<\/li>\n<li>Compatible with multisite<\/li>\n<li>Shows a branded prompt when no logo is set yet<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder to <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate the plugin through the \"Plugins\" menu in WordPress.<\/li>\n<li>Set your Site Logo:\n\n<ul>\n<li><strong>Classic themes:<\/strong> Go to Appearance \u2192 Customize \u2192 Site Identity.<\/li>\n<li><strong>Block themes (e.g. Twenty Twenty-Five):<\/strong> The Customizer is no longer reachable via the menu. Go directly to <code>\/wp-admin\/customize.php<\/code>, then open Site Identity.<\/li>\n<\/ul><\/li>\n<li>Your logo will automatically appear on the login screen.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"what%20size%20should%20the%20logo%20be%3F\"><h3>What size should the logo be?<\/h3><\/dt>\n<dd><p>A horizontal logo around 320px wide and 100px tall works best, but any image will be resized to fit.<\/p><\/dd>\n<dt id=\"i%20am%20using%20a%20block%20theme%20and%20cannot%20find%20appearance%20%E2%86%92%20customize.%20how%20do%20i%20set%20the%20logo%3F\"><h3>I am using a block theme and cannot find Appearance \u2192 Customize. How do I set the logo?<\/h3><\/dt>\n<dd><p>With block themes (such as Twenty Twenty-Five), WordPress removes the Customize menu item from the UI \u2014 this applies to both single-site and multisite installations. The Customizer itself is still functional: navigate directly to <code>\/wp-admin\/customize.php<\/code> in your browser, open the Site Identity panel, and upload your Site Logo there. The plugin will pick it up automatically.<\/p><\/dd>\n<dt id=\"does%20this%20plugin%20affect%20the%20admin%20dashboard%20logo%3F\"><h3>Does this plugin affect the admin dashboard logo?<\/h3><\/dt>\n<dd><p>No, it only changes the logo on the <code>\/wp-login.php<\/code> and logout screens.<\/p><\/dd>\n<dt id=\"will%20it%20break%20with%20future%20wordpress%20updates%3F\"><h3>Will it break with future WordPress updates?<\/h3><\/dt>\n<dd><p>It is compatible with the latest login screen markup (as of WP 6.5), and fallback CSS can be added for older versions.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.14<\/h4>\n\n<ul>\n<li>Docs: Corrected \"Tested up to\" header (was erroneously set to 6.0, now 7.0).<\/li>\n<li>Docs: Updated short description and Description section to reflect zero-config auto-logo behavior (since 1.0.7, selecting from media library is no longer needed).<\/li>\n<li>Docs: Added missing changelog entry for 1.0.13.<\/li>\n<\/ul>\n\n<h4>1.0.13<\/h4>\n\n<ul>\n<li>Maintenance: Internal version bump; no functional changes.<\/li>\n<\/ul>\n\n<h4>1.0.12<\/h4>\n\n<ul>\n<li>Fixed: Logo CSS now overrides all relevant WordPress core login styles (<code>background-size<\/code>, <code>background-repeat<\/code>, <code>background-position<\/code>, <code>width<\/code>, <code>height<\/code>) with <code>!important<\/code> so our styles win in every theme and WP version.<\/li>\n<li>Fixed: Added <code>width: 320px !important<\/code> and <code>max-width: 100% !important<\/code> to prevent wide logos from overflowing the login box on narrow viewports.<\/li>\n<li>Docs: FAQ block-theme entry now explicitly notes the Customizer menu absence applies to multisite installations as well.<\/li>\n<li>Code: Added inline comment explaining priority 99 on <code>login_enqueue_scripts<\/code>.<\/li>\n<\/ul>\n\n<h4>1.0.11<\/h4>\n\n<ul>\n<li>Docs: Clarified installation instructions and added FAQ entry for block themes (e.g. Twenty Twenty-Five), where Appearance \u2192 Customize is not accessible via the menu \u2014 users can reach it directly at <code>\/wp-admin\/customize.php<\/code>.<\/li>\n<\/ul>\n\n<h4>1.0.10<\/h4>\n\n<ul>\n<li>Improved: Enqueue login CSS via <code>wp_add_inline_style()<\/code> and login-prompt JS via <code>wp_add_inline_script()<\/code> instead of emitting raw <code>&lt;style&gt;<\/code> \/ <code>&lt;script&gt;<\/code> tags (WordPress best practice)<\/li>\n<li>Improved: Login-prompt notice now builds DOM nodes via <code>createElement<\/code> \/ <code>textContent<\/code> instead of <code>innerHTML<\/code> for safer output<\/li>\n<li>Added: <code>EFFOPELO_VERSION<\/code> constant used for asset cache-busting<\/li>\n<\/ul>\n\n<h4>1.0.9<\/h4>\n\n<ul>\n<li>Fixed: Updated installation instructions to reflect zero-config approach (no settings page since 1.0.7)<\/li>\n<li>Fixed: Code formatting to comply with WordPress coding standards<\/li>\n<\/ul>\n\n<h4>1.0.8<\/h4>\n\n<ul>\n<li>Added: Subtle prompt on login page to set site logo if none is configured<\/li>\n<\/ul>\n\n<h4>1.0.7<\/h4>\n\n<ul>\n<li>Changed: Now automatically uses the Site Logo from Appearance \u2192 Customize \u2192 Site Identity (no settings needed)<\/li>\n<\/ul>\n\n<h4>1.0.6<\/h4>\n\n<ul>\n<li>Fixed: Replaced ABSPATH with WP_UNINSTALL_PLUGIN constant in uninstall.php<\/li>\n<\/ul>\n\n<h4>1.0.5<\/h4>\n\n<ul>\n<li>Fixed: Removed redundant delete_option() from uninstall script<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Added: uninstall.php to properly clean up settings on plugin deletion<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Added: ABSPATH direct access protection<\/li>\n<li>Updated: Tested up to WordPress 6.9<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Improved: Removed redundant trim() call and simplified conditional logic<\/li>\n<li>Improved: Simplified attachment_id logic (no longer needs ternary)<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Security: Added CSRF protection to settings form<\/li>\n<li>Improved: Better CSS specificity (removed unnecessary !important rules)<\/li>\n<li>Improved: Logo height now scales properly with max-height constraint<\/li>\n<li>Added: i18n support for translations<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<\/ul>","raw_excerpt":"Display your Site Logo on the WordPress login screen automatically. Reads the Site Logo from Site Identity \u2014 no configuration needed.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/301624","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=301624"}],"author":[{"embeddable":true,"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/domclic"}],"wp:attachment":[{"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=301624"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=301624"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=301624"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=301624"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=301624"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/ug.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=301624"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}