Panel administracyjny WordPressa jest miejscem, w którym redaktorzy i administratorzy spędzają sporo czasu. Domyślnie w kokpicie znajdziemy widgety, takie jak „Szybki szkic”, „Wydarzenia i nowości w WordPress” czy „Stan witryny”. Jednak nic nie stoi na przeszkodzie, aby dodać tam własne widgety, które będą wyświetlały np.:
- statystyki strony,
- szybkie linki do kluczowych podstron,
- informacje dla redaktorów,
- dane z zewnętrznego API.
Dzięki temu kokpit można dostosować do potrzeb konkretnej witryny i zespołu.
Dodawanie własnego widgetu
Do rejestracji widgetu w kokpicie służy funkcja wp_add_dashboard_widget. Poniżej przykład:
function moj_widget_w_kokpicie() {
echo "<p>Witaj w panelu administracyjnym! To jest Twój własny widget.</p>";
}
function zarejestruj_moj_widget() {
wp_add_dashboard_widget(
'moj_widget_id',
'Mój Widget',
'moj_widget_w_kokpicie'
);
}
add_action('wp_dashboard_setup', 'zarejestruj_moj_widget');
Po dodaniu tego kodu do pliku functions.php (lub własnej wtyczki), w kokpicie pojawi się nowy widget z tytułem „Mój Widget”.
Dodanie treści dynamicznej
Możesz wzbogacić widget o dane dynamiczne, np. liczbę wpisów czy ostatnich komentarzy:
function moj_widget_statystyki() {
$liczba_wpisow = wp_count_posts()->publish;
$liczba_komentarzy = wp_count_comments()->approved;
echo "<p>Liczba opublikowanych wpisów: <strong>$liczba_wpisow</strong></p>";
echo "<p>Liczba zatwierdzonych komentarzy: <strong>$liczba_komentarzy</strong></p>";
}
Widget z danymi zewnętrznymi
Możesz także pobrać dane z zewnętrznego API:
function moj_widget_api() {
$response = wp_remote_get('https://api.coindesk.com/v1/bpi/currentprice.json');
if (!is_wp_error($response)) {
$body = json_decode(wp_remote_retrieve_body($response));
$kurs = $body->bpi->USD->rate ?? 'brak danych';
echo "<p>Aktualny kurs Bitcoina (USD): <strong>$kurs</strong></p>";
}
}
Podsumowanie
Dodanie własnych widgetów do kokpitu WordPress to świetny sposób na personalizację panelu administracyjnego. Możesz wyświetlać w nich najważniejsze informacje dla swojego zespołu, statystyki, a nawet dane z zewnętrznych źródeł.