
Customizacja Panelu Administratora WordPress: Przewodnik Dewelopera 2026
Spis treści
Kiedy oddajesz stronę klientowi, domyślny panel administracyjny często przytłacza. Pełno w nim “powiadomień o promocjach”, mylących menu jak “Komentarze” (gdy są wyłączone) i technicznego żargonu.
Generyczny kokpit mówi “Zainstalowałem motyw”. Dostosowany kokpit mówi “Zbudowałem profesjonalną aplikację”.
W tym przewodniku opanujemy Customizację Panelu WordPress, aby stworzyć czyste doświadczenie White Label dla Twoich klientów.


1. Sprzątanie Menu Administratora
Pierwszym krokiem jest remove_menu_page. Większość klientów nie musi widzieć “Narzędzi” czy “Ustawień”.
Dobra Praktyka: Sprawdzaj uprawnienia (capabilities), nie ID użytkownika. Nigdy nie ukrywaj menu przed Administratorami.
/**
* Oczyść Menu Admina dla Nie-Administratorów
*/
function wppoland_clean_admin_menu() {
// Zawsze pozwalaj Administratorom widzieć wszystko
if ( current_user_can( 'manage_options' ) ) {
return;
}
// Usuń menu główne
remove_menu_page( 'tools.php' ); // Narzędzia
remove_menu_page( 'options-general.php' ); // Ustawienia
remove_menu_page( 'edit-comments.php' ); // Komentarze
remove_menu_page( 'edit.php?post_type=acf-field-group' ); // ACF (Bezpieczeństwo!)
// Usuń podmenu
remove_submenu_page( 'themes.php', 'theme-editor.php' );
remove_submenu_page( 'plugins.php', 'plugin-editor.php' );
}
add_action( 'admin_menu', 'wppoland_clean_admin_menu', 999 );
Ostrzeżenie:
remove_menu_pagetylko ukrywa link. Sprytny użytkownik nadal może wejść na/wp-admin/options-general.phpbezpośrednio. Aby zablokować dostęp, weryfikuj uprawnienia nacurrent_screenlubadmin_init.
2. Dodawanie Własnych Stron Menu
Nie używaj frameworków opcji motywu, jeśli nie musisz. Natywne API jest szybkie i lekkie.
function wppoland_register_support_page() {
add_menu_page(
'Wsparcie Klienta', // Tytuł Strony
'Wsparcie', // Tytuł Menu
'edit_posts', // Uprawnienie
'wppoland-support', // Slug
'wppoland_render_support', // Callback
'dashicons-sos', // Ikona
90 // Pozycja
);
}
add_action( 'admin_menu', 'wppoland_register_support_page' );
function wppoland_render_support() {
?>
<div class="wrap">
<h1>Potrzebujesz Pomocy?</h1>
<div class="card">
<h2>Skontaktuj się z Deweloperem</h2>
<p>Email: <a href="mailto:dev@wppoland.com">dev@wppoland.com</a></p>
<p>Telefon: +48 123 456 789</p>
</div>
</div>
<?php
}
3. Dostosowywanie Paska Narzędzi (Toolbar)
Toolbar jest widoczny na froncie dla zalogowanych użytkowników. To idealne miejsce na “Szybkie Akcje” jak “Wyczyść Cache” czy “Edytuj w Page Builderze”.
function wppoland_customize_toolbar( $wp_admin_bar ) {
// Usuń logo WordPress (Profesjonalizm)
$wp_admin_bar->remove_node( 'wp-logo' );
// Dodaj własną akcję
$wp_admin_bar->add_node( [
'id' => 'clear-redis',
'title' => '⚡ Wyczyść Cache',
'href' => admin_url( 'admin-post.php?action=wppoland_clear_cache' ),
'meta' => [ 'title' => 'Opróżnij Redis Object Cache' ]
] );
}
add_action( 'admin_bar_menu', 'wppoland_customize_toolbar', 999 );
4. Widżety Kokpitu: Ekran Powitalny
Kiedy klient się loguje, ląduje w Kokpicie. Domyślne widżety (“Wydarzenia WordPress”, “Szybki szkic”) są dla niego zazwyczaj bezużyteczne.
Zastąp je własnym widżetem statusu.
function wppoland_dashboard_widgets() {
// Usuń domyślne
remove_meta_box( 'dashboard_primary', 'dashboard', 'side' ); // WP Events
remove_meta_box( 'dashboard_quick_press', 'dashboard', 'side' ); // Szybki szkic
// Dodaj własny widżet
wp_add_dashboard_widget(
'wppoland_status_widget',
'Status Strony',
'wppoland_render_status_widget'
);
}
add_action( 'wp_dashboard_setup', 'wppoland_dashboard_widgets' );
function wppoland_render_status_widget() {
echo '<p>✅ <strong>WordPress Core</strong>: Aktualny</p>';
echo '<p>✅ <strong>Kopie Zapasowe</strong>: Codzienne (Ostatnia: 2:00)</p>';
echo '<p>📈 <strong>Ruch</strong>: <a href="/pl/#">Zobacz Analitykę</a></p>';
}
5. White Labeling przez CSS
Na koniec, dodaj trochę szlifu. Załaduj własny plik CSS dla panelu admina, aby pasował do brandingu klienta (lub Twojej agencji).
function wppoland_admin_styles() {
echo '<style>
/* Zmiana koloru paska admina */
#wpadminbar { background: #2c3e50; }
/* Wyróżnienie własnego menu */
#toplevel_page_wppoland-support .wp-menu-image { color: #e74c3c !important; }
/* Ukrycie irytujących powiadomień wtyczek */
.notice.is-dismissible { display: none; } /* Używaj ostrożnie! */
</style>';
}
add_action( 'admin_head', 'wppoland_admin_styles' );
6. Personalizacja Ekranu Logowania
Pierwszy punkt styku klienta z Twoim systemem to ekran logowania (/wp-login.php). Zamiast logo WordPressa, pokaż logo klienta.

function wppoland_login_logo() {
echo '<style type="text/css">
#login h1 a {
background-image: url(' . get_stylesheet_directory_uri() . '/assets/images/client-logo.png);
background-size: contain;
width: 100%;
height: 80px;
}
</style>';
}
add_action( 'login_head', 'wppoland_login_logo' );
Podsumowanie
Dostosowywanie panelu admina to nie tylko estetyka. To User Experience (UX). Usuwając bałagan i eksponując ważne narzędzia, zmniejszasz liczbę zgłoszeń do supportu i sprawiasz, że klienci czują, iż posiadają produkt klasy premium.