{"id":403839,"date":"2026-11-14T16:03:52","date_gmt":"2026-11-14T16:03:52","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/wes-empire-custom-login-page-customizer-stealth-portal\/"},"modified":"2026-11-14T16:03:41","modified_gmt":"2026-11-14T16:03:41","slug":"wes-empire-custom-login-page-customizer-stealth-portal","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/wes-empire-custom-login-page-customizer-stealth-portal\/","author":23598341,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.2.4","stable_tag":"1.2.4","tested":"7.1.4","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"Wes Empire Custom Login Page Customizer & Stealth Portal","header_author":"Wes Empire","header_description":"All-in-one agency white-label login portal builder and security hardener. Create a dual-view login & password recovery page on any custom slug, customize full color palettes, inject noindex headers, and protect core login endpoints.","last_updated":"2026-11-14 16:03:41","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/wesempire.co.ke","rating":0,"author_block_rating":0,"active_installs":0,"downloads":45,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.2.4":{"tag":"1.2.4","author":"wesempire","date":"2026-11-14 16:03:41","revision":3802194}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-256x256.png":{"filename":"icon-256x256.png","revision":3802192,"resolution":"256x256","location":"assets","locale":"","width":394,"height":416}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3802192,"resolution":"1544x500","location":"assets","locale":"","width":1408,"height":768}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.2.4"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3802192,"resolution":"1","location":"assets","locale":"","width":1842,"height":901},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3802192,"resolution":"2","location":"assets","locale":"","width":1618,"height":865},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3802192,"resolution":"3","location":"assets","locale":"","width":1918,"height":967}},"screenshots":[]},"plugin_section":[],"plugin_tags":[3816,3691,3839,41128,3765],"plugin_category":[],"plugin_contributors":[291807],"plugin_business_model":[],"class_list":["post-403839","plugin","type-plugin","status-publish","hentry","plugin_tags-admin-login","plugin_tags-custom-login","plugin_tags-custom-login-page","plugin_tags-login-customizer","plugin_tags-white-label","plugin_contributors-wesempire","plugin_committers-wesempire"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/wes-empire-custom-login-page-customizer-stealth-portal\/assets\/icon-256x256.png?rev=3802192","icon_2x":"https:\/\/ps.w.org\/wes-empire-custom-login-page-customizer-stealth-portal\/assets\/icon-256x256.png?rev=3802192","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/wes-empire-custom-login-page-customizer-stealth-portal\/assets\/screenshot-1.png?rev=3802192","caption":""},{"src":"https:\/\/ps.w.org\/wes-empire-custom-login-page-customizer-stealth-portal\/assets\/screenshot-2.png?rev=3802192","caption":""},{"src":"https:\/\/ps.w.org\/wes-empire-custom-login-page-customizer-stealth-portal\/assets\/screenshot-3.png?rev=3802192","caption":""}],"raw_content":"<!--section=description-->\n<p><strong>Wes Empire Custom Login Page Customizer &amp; Stealth Portal<\/strong> replaces the generic WordPress login screen (<code>wp-login.php<\/code>) with a clean, dual-view sign-in and password recovery portal embedded directly into any custom WordPress page via shortcode.<\/p>\n\n<p>Unlike basic \"hide login\" plugins that merely change the URL slug while leaving the default WordPress logo and layout intact, this plugin gives agencies and site owners a complete, self-contained white-label portal experience:<\/p>\n\n<ul>\n<li><strong>Dual-View Portal Interface<\/strong>: Switch smoothly between the Sign-In view and Password Recovery view on the same page without jarring page reloads.<\/li>\n<li><strong>Custom Page Slug Integration<\/strong>: Place the <code>[wesemcul_admin_login]<\/code> shortcode on any page (e.g., <code>\/admin\/<\/code>, <code>\/login\/<\/code>, or <code>\/portal\/<\/code>) and configure the target slug in Settings.<\/li>\n<li><strong>Full Brand Palette Controls<\/strong>: Customize primary brand color, accent highlight border, header title color, subheading color, and form text color using native WordPress color pickers.<\/li>\n<li><strong>Search Engine Stealth<\/strong>: Automatically sends <code>X-Robots-Tag: noindex, nofollow, noarchive<\/code> headers and meta tags on your portal page so administrative login URLs stay out of search engine indexes.<\/li>\n<li><strong>Safe Core Action Whitelisting<\/strong>: Preserves native WordPress password reset links (<code>rp<\/code>, <code>resetpass<\/code>) and <code>logout<\/code> flows so users are never locked out.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>wes-empire-custom-login-page-customizer-stealth-portal<\/code> folder to <code>\/wp-content\/plugins\/<\/code> or install via the WordPress Plugins screen.<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> screen in WordPress.<\/li>\n<li>Navigate to <strong>Settings &gt; Wes Empire Login Customizer<\/strong> to set your portal name, custom page slug, and brand colors.<\/li>\n<li>Create a new page matching your configured slug (for example, <code>admin<\/code>) and insert the shortcode <code>[wesemcul_admin_login]<\/code>.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"will%20i%20get%20locked%20out%20when%20resetting%20my%20password%20or%20logging%20out%3F\"><h3>Will I get locked out when resetting my password or logging out?<\/h3><\/dt>\n<dd><p>No. Core actions such as <code>logout<\/code>, <code>rp<\/code>, <code>resetpass<\/code>, and <code>postpass<\/code> are explicitly whitelisted so password reset emails and logout flows complete smoothly.<\/p><\/dd>\n<dt id=\"can%20i%20use%20any%20page%20slug%20for%20my%20login%20portal%3F\"><h3>Can I use any page slug for my login portal?<\/h3><\/dt>\n<dd><p>Yes. Set your desired slug in <strong>Settings &gt; Wes Empire Login Customizer<\/strong>, create a matching WordPress page, and place <code>[wesemcul_admin_login]<\/code> inside it.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.2.4<\/h4>\n\n<ul>\n<li>Enqueued all frontend CSS and JavaScript properly using <code>wp_register_style<\/code>, <code>wp_add_inline_style<\/code>, <code>wp_register_script<\/code>, and <code>wp_add_inline_script<\/code>.<\/li>\n<li>Removed invalid <code>Plugin URI<\/code> header returning a 404 status.<\/li>\n<li>Standardized prefixing to <code>wesemcul_<\/code> and switched redirects to <code>wp_safe_redirect()<\/code>.<\/li>\n<\/ul>\n\n<h4>1.2.3<\/h4>\n\n<ul>\n<li>Fixed text domain consistency and output escaping across shortcode views.<\/li>\n<\/ul>","raw_excerpt":"All-in-one white-label login portal customizer and security hardener with dual-view login\/recovery, custom page slugs, and full palette controls.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/403839","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=403839"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/wesempire"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=403839"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=403839"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=403839"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=403839"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=403839"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=403839"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}