JezK
Edit File: modern-admin.php
<?php /* Plugin Name: Modern Admin Premium UI (One-File) Description: Overhauls the WordPress dashboard with a modern, simple, premium design. Fixed submenu arrows, button colors, text squishing issues. Tables are kept default for perfect mobile responsiveness. Version: 2.5 Author: Your Name */ if ( ! defined( 'ABSPATH' ) ) exit; // ১. কাস্টম CSS অ্যাড করা (Priority 1 দেওয়া হয়েছে যাতে প্রথমে লোড হয় এবং জাম্পিং বা FOUC না হয়) add_action('admin_head', 'modern_admin_premium_css', 1); function modern_admin_premium_css() { if ( ! is_admin() ) { return; } echo '<style> /* --- গ্লোবাল ভেরিয়েবল ও টাইপোগ্রাফি --- */ :root { --bg-main: #F4F7FE; --bg-card: #FFFFFF; --text-main: #2B3674; --text-muted: #8F9BBA; --brand-primary: #11047A; /* প্রাইমারি কালার */ --border-radius: 12px; --shadow-soft: 0px 10px 30px rgba(112, 144, 176, 0.08); --sidebar-width: 220px; } body.wp-admin { background-color: var(--bg-main) !important; font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important; color: var(--text-main) !important; } /* ======================================================== উকমার্স হেডার ও অ্যাক্টিভিটি প্যানেল হাইড ======================================================== */ .woocommerce-layout__header, .woocommerce-layout__activity-panel, #woocommerce-activity-panel { display: none !important; } /* ======================================================== ফিক্সড টপ বার (Navbar) কাস্টমাইজেশন ======================================================== */ #wpadminbar { background: var(--bg-card) !important; height: 60px !important; position: fixed !important; /* জাম্পিং রোধ করতে ফিক্সড করা হয়েছে */ top: 0 !important; width: 100% !important; box-shadow: 0 4px 15px rgba(112, 144, 176, 0.08) !important; color: var(--text-main) !important; z-index: 99999 !important; } #wpadminbar * { color: var(--text-main) !important; } #wpadminbar .ab-item, #wpadminbar a.ab-item, #wpadminbar > #wp-toolbar span.ab-label, #wpadminbar > #wp-toolbar span.noticon { line-height: 60px !important; height: 60px !important; display: flex !important; align-items: center !important; } #wpadminbar .ab-top-menu > li.hover > .ab-item, #wpadminbar .ab-top-menu > li:hover > .ab-item, #wpadminbar .ab-top-menu > li > .ab-item:focus { background: transparent !important; color: var(--brand-primary) !important; } #wpadminbar #wp-toolbar > ul > li { display: none !important; } #wpadminbar #wp-toolbar > ul > li#wp-admin-bar-menu-toggle, #wpadminbar #wp-toolbar > ul > li#wp-admin-bar-site-name { display: block !important; } #wpadminbar #wp-admin-bar-top-secondary > li { display: none !important; } #wpadminbar #wp-admin-bar-top-secondary > li#wp-admin-bar-my-account { display: block !important; } #wpadminbar #wp-admin-bar-my-account > a { padding-right: 20px !important; font-weight: 600 !important; } #wpadminbar #wp-admin-bar-my-account.with-avatar > a img { width: 35px !important; height: 35px !important; border-radius: 50% !important; border: 2px solid var(--brand-primary) !important; margin-left: 10px !important; } #wpadminbar .ab-sub-wrapper { top: 60px !important; background: var(--bg-card) !important; box-shadow: var(--shadow-soft) !important; border-radius: 0 0 8px 8px !important; } /* স্পেসিং ফিক্স */ html.wp-toolbar { padding-top: 60px !important; margin-top: 0 !important; } #wpcontent { padding-top: 0px !important; padding-left: 20px !important; padding-right: 20px !important; box-sizing: border-box !important; max-width: 100% !important; } .wrap { margin-top: 5px !important; max-width: 100% !important; } /* ======================================================== বাম দিকের সাইডবার (Desktop & Mobile) ======================================================== */ @media screen and (min-width: 783px) { #adminmenu, #adminmenuback, #adminmenuwrap { width: var(--sidebar-width) !important; background-color: var(--bg-card) !important; border-right: none !important; box-shadow: 5px 0px 30px rgba(112, 144, 176, 0.05) !important; } #wpcontent, #wpfooter { margin-left: var(--sidebar-width) !important; } } /* মোবাইল স্পেসিফিক ফিক্স */ @media screen and (max-width: 782px) { #wpadminbar { position: fixed !important; top: 0 !important; width: 100% !important; } html.wp-toolbar { padding-top: 60px !important; margin-top: 0 !important;} #wpcontent { margin-left: 0 !important; padding: 10px !important; } #wpadminbar #wp-admin-bar-menu-toggle { display: block !important; } #wpadminbar #wp-admin-bar-menu-toggle a { background: transparent !important; } #wpadminbar #wp-admin-bar-menu-toggle a::before { color: var(--brand-primary) !important; font-size: 24px !important; line-height: 60px !important; } #adminmenuwrap, #adminmenuback, #adminmenu { background-color: var(--bg-card) !important; margin-top: 0 !important; /* মোবাইলে অতিরিক্ত স্পেস রিমুভ করা হয়েছে */ padding-top: 0 !important; } #adminmenu li { background-color: transparent !important; } } #adminmenu { margin-top: 5px !important; } /* গ্লোবাল মার্জিন কমানো হয়েছে */ #adminmenu li { border-bottom: 1px solid rgba(0, 0, 0, 0.03) !important; } #adminmenu li:last-child { border-bottom: none !important; } /* WP Default Active Styles Reset (সাদা বক্স রিমুভ করার জন্য) */ #adminmenu li.wp-has-current-submenu:after, #adminmenu li.current:after { display: none !important; border: none !important; } #adminmenu li.wp-has-current-submenu, #adminmenu li.current { background: transparent !important; } #adminmenu a { position: relative !important; color: var(--text-muted) !important; font-weight: 600 !important; font-size: 13px !important; border-radius: 8px !important; margin: 4px 10px !important; padding: 10px 12px !important; transition: all 0.2s ease !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; } #adminmenu a:hover, #adminmenu li.menu-top:hover > a { color: var(--brand-primary) !important; background-color: #F8FAFC !important; } #adminmenu li.menu-top:hover, #adminmenu li.opensub>a.menu-top, #adminmenu li>a.menu-top:focus { position: relative !important; background-color: transparent !important; } /* Active Menu State */ #adminmenu li.wp-has-current-submenu > a.menu-top, #adminmenu li.current > a.menu-top { background-color: var(--brand-primary) !important; color: #ffffff !important; box-shadow: 0px 4px 12px rgba(17, 4, 122, 0.2) !important; } /* Active Menu Elements Color Force */ #adminmenu li.wp-has-current-submenu > a.menu-top .wp-menu-name, #adminmenu li.current > a.menu-top .wp-menu-name, #adminmenu li.wp-has-current-submenu > a.menu-top div.wp-menu-image:before, #adminmenu li.current > a.menu-top div.wp-menu-image:before { color: #ffffff !important; } /* Active Menu Hover Fix */ #adminmenu li.wp-has-current-submenu:hover > a.menu-top, #adminmenu li.current:hover > a.menu-top { background-color: var(--brand-primary) !important; color: #ffffff !important; } #adminmenu div.wp-menu-image:before { color: var(--text-muted) !important; } /* ======================================================== সাবমেনু ড্রপডাউন (Accordion Style - No Reload) ======================================================== */ #adminmenu .wp-submenu { position: relative !important; top: 0 !important; left: 0 !important; width: 100% !important; box-shadow: none !important; background-color: transparent !important; padding: 0 0 10px 10px !important; display: none; } #adminmenu li.wp-has-current-submenu > .wp-submenu { display: block; } #adminmenu .wp-submenu li a { margin: 2px 10px !important; padding: 8px 12px !important; font-size: 12px !important; font-weight: 500 !important; color: var(--text-muted) !important; background: transparent !important; box-shadow: none !important; } #adminmenu .wp-submenu li a:hover, #adminmenu .wp-submenu li.current a { color: var(--brand-primary) !important; background: #EEF2FF !important; } #wpfooter, #contextual-help-link-wrap, #screen-options-link-wrap { display: none !important; } /* ======================================================== প্রিমিয়াম ইনপুট বক্স ও ফর্ম ফিল্ডস ======================================================== */ input[type="text"], input[type="search"], input[type="password"], input[type="email"], input[type="number"], input[type="tel"], input[type="url"], textarea, select { background: #F8FAFC !important; border: 1px solid #E2E8F0 !important; border-radius: 8px !important; padding: 6px 12px !important; color: var(--text-main) !important; font-size: 13px !important; box-shadow: none !important; transition: all 0.3s ease !important; box-sizing: border-box !important; max-width: 100% !important; min-height: 34px !important; } input[type="text"]:focus, textarea:focus, select:focus, input[type="email"]:focus { background: #FFFFFF !important; border-color: var(--brand-primary) !important; box-shadow: 0 0 0 3px rgba(17, 4, 122, 0.15) !important; outline: none !important; } #titlewrap input[type="text"] { width: 100% !important; padding: 10px 15px !important; font-size: 1.5em !important; min-height: 45px !important; } .tablenav { margin-bottom: 10px !important; display: flex; flex-wrap: wrap; align-items: center; } .tablenav select, .tablenav input[type="submit"], .tablenav .button { width: auto !important; margin-right: 5px !important; margin-bottom: 5px !important; height: 34px !important; min-height: 34px !important; line-height: 1.2 !important; padding: 0 12px !important; vertical-align: middle !important; } input[type="checkbox"], input[type="radio"] { border: 1px solid #CBD5E1 !important; border-radius: 4px !important; width: 18px !important; height: 18px !important; min-height: 18px !important; margin-right: 8px !important; cursor: pointer; } input[type="radio"] { border-radius: 50% !important; } /* ======================================================== মেইন কনটেন্ট এরিয়া, কার্ডস ======================================================== */ .wrap h1, .wrap h2, .wp-heading-inline { color: var(--brand-primary) !important; font-weight: 700 !important; margin-bottom: 15px !important; display: inline-block !important; margin-top: 5px !important; } .postbox, .dashboard-widget-wrap { background: var(--bg-card) !important; border: none !important; border-radius: var(--border-radius) !important; box-shadow: var(--shadow-soft) !important; padding: 20px !important; margin-bottom: 25px !important; box-sizing: border-box !important; width: 100% !important; max-width: 100% !important; word-wrap: break-word !important; } .form-table { background: var(--bg-card) !important; border: none !important; border-radius: var(--border-radius) !important; box-shadow: var(--shadow-soft) !important; margin-bottom: 25px !important; width: 100% !important; border-collapse: collapse !important; } .form-table th, .form-table td { color: var(--text-main) !important; padding: 15px 20px !important; text-align: left !important; } .form-table th { font-weight: 600 !important; } /* ======================================================== মডার্ন বাটন (প্রাইমারি কালার) ======================================================== */ .wp-core-ui .button-primary, input[type="submit"], button[type="submit"] { background: var(--brand-primary) !important; border: none !important; border-radius: 8px !important; box-shadow: 0 4px 10px rgba(17, 4, 122, 0.25) !important; padding: 6px 24px !important; text-shadow: none !important; font-weight: 600 !important; color: #fff !important; transition: all 0.2s ease !important; vertical-align: middle !important; cursor: pointer !important; line-height: normal !important; } .wp-core-ui .button-primary:hover, input[type="submit"]:hover, button[type="submit"]:hover { transform: translateY(-2px); box-shadow: 0 6px 15px rgba(17, 4, 122, 0.35) !important; background: #0d035c !important; } .wp-core-ui .button-secondary, .wp-core-ui .button { background: #EEF2FF !important; border: 1px solid var(--brand-primary) !important; color: var(--brand-primary) !important; border-radius: 8px !important; font-weight: 600 !important; padding: 4px 15px !important; vertical-align: middle !important; transition: all 0.2s ease !important; cursor: pointer !important; line-height: normal !important; } .wp-core-ui .button-secondary:hover, .wp-core-ui .button:hover { background: var(--brand-primary) !important; color: #fff !important; border-color: var(--brand-primary) !important; } </style>'; } // ২. কাস্টম JS অ্যাড করা add_action('admin_footer', 'modern_admin_premium_js', 999); function modern_admin_premium_js() { if ( ! is_admin() ) { return; } ?> <script> jQuery(document).ready(function($) { // সাবমেনু ড্রপডাউন ফাংশন $('#adminmenu li.wp-has-submenu > a').off('click').on('click', function(e) { e.preventDefault(); e.stopPropagation(); var parentLi = $(this).parent(); parentLi.toggleClass('opensub'); parentLi.find('.wp-submenu').slideToggle(250); }); }); </script> <?php } ?>