WordPress Dashboard aufräumen

WordPress-Dashboard anpassen und aufräumen: Widgets und Adminbar

Geschrieben am 26. August 2023
Autor Der Webfuchs – WordPress- und SEO-Praxiswissen mit Fokus auf klare, umsetzbare Optimierung

Aktualisiert am 9. August 2026
Voraussichtliche Lesezeit 14 min

Du kannst das WordPress-Dashboard ohne Code aufräumen, indem Du unter Ansicht anpassen unnötige Widgets ausblendest und die übrigen per Drag-and-drop sortierst. Sollen Änderungen für mehrere Benutzer gelten oder möchtest Du eigene Werkzeuge ergänzen, brauchst Du ein Plugin oder ein geprüftes Code-Snippet.

Diese Anleitung zeigt Dir die passenden Wege für das Dashboard und die Adminbar. Du entfernst Standard-Widgets, ergänzt eine Suche oder einen Search-Console-Link und kannst eigene RSS-, Notiz- oder Linklisten-Widgets einrichten.

Kurzantwort:

  1. Blende Widgets zunächst über Ansicht anpassen aus.
  2. Nutze remove_meta_box(), wenn Widgets verbindlich verschwinden sollen.
  3. Ergänze Adminbar-Links über admin_bar_menu.
  4. Erstelle eigene Dashboard-Bereiche mit wp_add_dashboard_widget().
  5. Prüfe Berechtigungen, Nonces und Eingaben bei jeder Funktion mit Schreibzugriff.

⚠️ Prüfstand:

Die sieben PHP-Blöcke wurden am 9. August 2026 mit WordPress 7.0.3 und PHP 8.2.12 auf Syntax geprüft. Die sechs vollständigen Snippets wurden gemeinsam geladen. Das Entfernen der Standard-Widgets, beide Adminbar-Einträge, die Registrierung der drei eigenen Widgets, das Notizformular und die Linkliste wurden lokal ausgeführt. Der externe RSS-Abruf und Adminimize wurden nicht praktisch getestet.

Vor dem Einbau: Erstelle ein aktuelles WordPress-Backup und teste neue Snippets nach Möglichkeit zuerst auf einer Staging-Website. Füge PHP-Code nicht direkt in das Haupt-Theme ein.

Dashboard, Adminbereich und Adminbar: Was ist gemeint?

Die Begriffe werden häufig vermischt. Das Dashboard ist die Startseite unter Dashboard > Startseite. Der Adminbereich umfasst das gesamte WordPress-Backend mit Beiträgen, Medien, Plugins und Einstellungen. Die Adminbar ist die obere Werkzeugleiste für angemeldete Benutzer.

Diese Anleitung konzentriert sich auf das Dashboard und die Adminbar. Für ungenutzte Bilder findest Du eine eigene Anleitung zum Aufräumen der WordPress-Mediathek. Das Bereinigen von WordPress-Dateien oder Datenbankeinträgen ist eine separate Wartungsaufgabe. Die offizielle WordPress-Dokumentation beschreibt die vorhandenen Bereiche und Standard-Widgets auf der Seite zum Dashboard-Bildschirm.

Stand August 2026: Klassisches und experimentelles Dashboard

WordPress Core verwendet weiterhin das bekannte Dashboard mit Meta-Boxen. Im Gutenberg-Plugin gibt es zusätzlich ein experimentelles, anpassbares Dashboard. Dort lassen sich Widgets hinzufügen, verschieben und in ihrer Größe ändern. Diese Oberfläche ist noch keine stabile Admin-Schnittstelle und muss unter Gutenberg > Experimente ausdrücklich aktiviert werden.

Die folgenden Snippets beziehen sich auf das klassische Dashboard von WordPress Core. Die aktuelle Einordnung des Experiments findest Du im offiziellen Beitrag zu Gutenberg 23.3.

Welche Methode passt zu Deinem Dashboard?

ZielPassende MethodeWirkung
Widgets nur für Dich ausblendenAnsicht anpassenGilt für Dein Benutzerkonto
Widgets verbindlich entfernenremove_meta_box()Kann für alle oder ausgewählte Benutzer gelten
Adminbar ergänzenadmin_bar_menuFügt Links oder Werkzeuge hinzu
Eigene Dashboard-Widgets erstellenwp_add_dashboard_widget()Ergänzt RSS, Notizen oder Linklisten
Viele Backend-Bereiche nach Rollen ausblendenAdminimizeUmfangreiche Konfiguration ohne eigenen Code

Dashboard-Widgets ohne Code ausblenden

Für Dein eigenes Benutzerkonto brauchst Du meistens kein Snippet. WordPress bietet im Dashboard oben rechts den Bereich Ansicht anpassen. Dort kannst Du nicht benötigte Widgets ausblenden.

WordPress-Dashboard über Ansicht anpassen aufräumen
Über „Ansicht anpassen“ blendest Du Dashboard-Widgets für Dein Benutzerkonto aus.
  1. Öffne im WordPress-Backend das Dashboard.
  2. Klicke oben rechts auf Ansicht anpassen.
  3. Entferne die Häkchen bei den Widgets, die Du nicht benötigst.
  4. Ordne die verbleibenden Widgets per Drag-and-drop neu an.

Zu den WordPress-Standardbereichen gehören „Auf einen Blick“, „Aktivität“, „Schneller Entwurf“, „Website-Zustand“ sowie „WordPress-Veranstaltungen und Neuigkeiten“. Installierte Plugins können weitere Widgets ergänzen.

Nicht benötigte Widgets im WordPress-Dashboard
Welche Widgets Du ausblendest, hängt von Deinem Arbeitsablauf und den installierten Plugins ab.

Die Auswahl wird pro Benutzer gespeichert. Andere Administratoren oder Redakteure behalten ihre eigene Dashboard-Konfiguration. Möchtest Du Widgets für mehrere Benutzer verbindlich entfernen, brauchst Du ein Snippet oder ein geeignetes Plugin.

Dashboard-Widgets dauerhaft per Code entfernen

WordPress registriert Dashboard-Widgets als Meta-Boxen. Der Hook wp_dashboard_setup wird ausgelöst, nachdem die Core-Widgets registriert wurden. Innerhalb dieses Hooks kannst Du Widgets mit remove_meta_box() entfernen.

Füge PHP-Code nicht direkt in das Haupt-Theme ein. Nutze ein kleines eigenes Plugin oder ein Snippet-Plugin. In meiner Sammlung mit 25 geprüften WordPress-Snippets findest Du Hinweise zu Einbauort, Rückweg und Tests.

/**
 * Entfernt ausgewählte Standard-Widgets aus dem Dashboard.
 */
function dwf_remove_dashboard_widgets(): void {
    remove_meta_box( 'dashboard_activity', 'dashboard', 'normal' );
    remove_meta_box( 'dashboard_quick_press', 'dashboard', 'side' );
    remove_meta_box( 'dashboard_primary', 'dashboard', 'side' );
    remove_meta_box( 'dashboard_right_now', 'dashboard', 'normal' );

    /*
     * Optional: Der Website-Zustand ist nützlich und bleibt deshalb
     * standardmäßig sichtbar. Entferne die Kommentarzeichen nur,
     * wenn Du das Widget bewusst ausblenden möchtest.
     *
     * remove_meta_box( 'dashboard_site_health', 'dashboard', 'normal' );
     */

    /*
     * Das Willkommen-Panel ist keine Meta-Box.
     * Diese Zeile entfernt es für alle betroffenen Benutzer:
     *
     * remove_action( 'welcome_panel', 'wp_welcome_panel' );
     */
}
add_action( 'wp_dashboard_setup', 'dwf_remove_dashboard_widgets', 999 );

Das Snippet wirkt in dieser Form für alle Benutzer, die das normale Dashboard öffnen. Sollen Administratoren ihre Widgets behalten, setze am Anfang der Funktion diese Prüfung ein:

if ( current_user_can( 'manage_options' ) ) {
    return;
}

Widgets von Plugins besitzen eigene IDs. Diese können sich nach einem Plugin-Update ändern. Eine unbekannte ID verursacht keinen Fehler, sie hat lediglich keine Wirkung. Prüfe deshalb die aktuelle ID, bevor Du ein Plugin-Widget in das Snippet aufnimmst.

In einer früheren Konfiguration meiner Website kamen zusätzliche Dashboard-Widgets unter anderem von Pretty Links, Fluent Forms und Advanced Ads. Ich übernehme deren damalige IDs bewusst nicht in das aktuelle Snippet, weil Plugin-Updates diese internen Bezeichnungen verändern können.

Möchtest Du die Tabelle unter Beiträge > Alle Beiträge anpassen? Im Artikel zur WordPress-Beitragsübersicht zeige ich Dir zusätzliche Spalten für Wortzahl, Lesezeit, Aktualisierungsdatum und Beitragsbilder.

WordPress-Adminbar anpassen

Die Adminbar erscheint für angemeldete Benutzer im Backend und, sofern im Benutzerprofil aktiviert, auch im Frontend. Mit WP_Admin_Bar::add_node() kannst Du eigene Einträge ergänzen. Administrative Links sollten nur Benutzer sehen, die sie tatsächlich benötigen.

DuckDuckGo-Suche in die Adminbar einfügen

Das folgende Suchfeld erscheint nur für angemeldete Benutzer, die Beiträge bearbeiten dürfen. Die Suchergebnisse öffnen sich in einem neuen Tab.

/**
 * Fügt Autoren und Administratoren ein DuckDuckGo-Suchfeld hinzu.
 */
function dwf_add_duckduckgo_search_to_adminbar( WP_Admin_Bar $admin_bar ): void {
    if ( ! is_user_logged_in() || ! current_user_can( 'edit_posts' ) ) {
        return;
    }

    $form = sprintf(
        '<form action="%1$s" method="get" target="_blank" rel="noopener noreferrer" style="display:flex;align-items:center;height:32px;padding:0 8px;">'
        . '<label class="screen-reader-text" for="dwf-adminbar-search">%2$s</label>'
        . '<input id="dwf-adminbar-search" name="q" type="search" placeholder="%3$s" '
        . 'style="width:170px;height:24px;margin:0;border:0;border-radius:3px;padding:2px 7px;" />'
        . '</form>',
        esc_url( 'https://duckduckgo.com/' ),
        esc_html__( 'DuckDuckGo durchsuchen', 'dwf' ),
        esc_attr__( 'Web durchsuchen', 'dwf' )
    );

    $admin_bar->add_node(
        array(
            'id'    => 'dwf-duckduckgo-search',
            'title' => $form,
            'meta'  => array(
                'class' => 'dwf-duckduckgo-search',
                'title' => esc_attr__( 'DuckDuckGo durchsuchen', 'dwf' ),
            ),
        )
    );
}
add_action( 'admin_bar_menu', 'dwf_add_duckduckgo_search_to_adminbar', 100 );

Ist die Adminbar in Deinem Benutzerprofil für das Frontend aktiviert, erscheint das Suchfeld auch auf der Website. Auf schmalen Bildschirmen können 170 Pixel zu viel Platz beanspruchen. Soll die Suche ausschließlich im Backend erscheinen, ergänze am Anfang der Funktion eine Abfrage mit if ( ! is_admin() ) { return; }.

Google Search Console direkt verlinken

Ein direkter Link zur richtigen Search-Console-Property spart die Property-Auswahl. Das Snippet zeigt den Link nur Benutzern mit administrativen Rechten.

/**
 * Fügt Administratoren einen Link zur Search Console hinzu.
 */
function dwf_add_search_console_link( WP_Admin_Bar $admin_bar ): void {
    if ( ! is_user_logged_in() || ! current_user_can( 'manage_options' ) ) {
        return;
    }

    /*
     * URL-Präfix-Property: https://example.com/
     * Domain-Property:     sc-domain:example.com
     */
    $property = 'https://example.com/';

    $search_console_url = 'https://search.google.com/search-console?resource_id='
        . rawurlencode( $property );

    $admin_bar->add_node(
        array(
            'id'    => 'dwf-search-console',
            'title' => 'Search Console',
            'href'  => esc_url( $search_console_url ),
            'meta'  => array(
                'target' => '_blank',
                'rel'    => 'noopener noreferrer',
                'title'  => 'Google Search Console öffnen',
            ),
        )
    );
}
add_action( 'admin_bar_menu', 'dwf_add_search_console_link', 100 );

Ersetze https://example.com/ durch Deine Property. Für eine Domain-Property trägst Du beispielsweise sc-domain:example.com ein. rawurlencode() kodiert den Property-Wert zuverlässig für den URL-Parameter.

Eigene Widgets zum Dashboard hinzufügen

Mit wp_add_dashboard_widget() ergänzt Du eigene Inhalte. Die folgenden Beispiele sind unabhängig voneinander. Aktiviere nur die Funktionen, die Du wirklich nutzt.

Das RSS- und das Linklisten-Widget werden in dieser Fassung für alle angemeldeten Benutzer mit Dashboard-Zugriff registriert. Möchtest Du sie beispielsweise auf Autoren und Administratoren beschränken, ergänze in der jeweiligen Registrierungsfunktion eine Fähigkeitsprüfung mit current_user_can( 'edit_posts' ), wie sie das Notiz-Beispiel mit read vormacht.

RSS-Feed als Dashboard-Widget anzeigen

Ein RSS-Widget eignet sich für WordPress-Meldungen, Branchen-News oder Deinen eigenen Blog-Feed. WordPress speichert abgerufene Feeds vorübergehend im Cache. Dadurch wird die externe Quelle nicht bei jedem Dashboard-Aufruf neu abgefragt.

/**
 * Registriert ein RSS-Widget im Dashboard.
 */
function dwf_register_rss_dashboard_widget(): void {
    wp_add_dashboard_widget(
        'dwf_rss_dashboard_widget',
        'WordPress-News',
        'dwf_render_rss_dashboard_widget'
    );
}
add_action( 'wp_dashboard_setup', 'dwf_register_rss_dashboard_widget' );

/**
 * Gibt die neuesten Einträge des eingestellten RSS-Feeds aus.
 */
function dwf_render_rss_dashboard_widget(): void {
    $feed_url = 'https://wordpress.org/news/feed/';
    $max_items = 5;

    require_once ABSPATH . WPINC . '/feed.php';

    $rss = fetch_feed( $feed_url );

    if ( is_wp_error( $rss ) ) {
        echo '<p>Der RSS-Feed konnte momentan nicht geladen werden.</p>';
        return;
    }

    $item_count = $rss->get_item_quantity( $max_items );
    $items      = $rss->get_items( 0, $item_count );

    if ( empty( $items ) ) {
        echo '<p>Im RSS-Feed wurden keine Beiträge gefunden.</p>';
        return;
    }

    echo '<ul>';

    foreach ( $items as $item ) {
        $title = $item->get_title();
        $url   = $item->get_permalink();
        $date  = $item->get_date( 'd.m.Y' );

        echo '<li>';
        echo '<a href="' . esc_url( $url ) . '" target="_blank" rel="noopener noreferrer">';
        echo esc_html( $title );
        echo '</a>';

        if ( $date ) {
            echo '<br><small>' . esc_html( $date ) . '</small>';
        }

        echo '</li>';
    }

    echo '</ul>';
}

Die offizielle Dashboard Widgets API weist bei RSS-Widgets ausdrücklich auf das Caching hin. Wird der Feed nicht erreicht, gibt das Snippet eine verständliche Meldung aus.

Persönliche Notizen sicher speichern

Das folgende Widget speichert höchstens 20 Notizen pro Benutzer in den WordPress-User-Metadaten. Jede Notiz ist auf 1.000 Zeichen begrenzt. Die Formulare enthalten Nonces und die Handler prüfen zusätzlich die Benutzerberechtigung.

Das Snippet setzt kein zusätzliches Cookie. Die Notizen liegen jedoch unverschlüsselt in der WordPress-Datenbank. Speichere darin keine Passwörter, Zugangsdaten oder vertraulichen Kundendaten.

/**
 * Registriert das persönliche Notiz-Widget.
 */
function dwf_register_notes_dashboard_widget(): void {
    if ( ! current_user_can( 'read' ) ) {
        return;
    }

    wp_add_dashboard_widget(
        'dwf_personal_notes_widget',
        'Meine Notizen',
        'dwf_render_notes_dashboard_widget'
    );
}
add_action( 'wp_dashboard_setup', 'dwf_register_notes_dashboard_widget' );

/**
 * Gibt die persönlichen Notizen und die Formulare aus.
 */
function dwf_render_notes_dashboard_widget(): void {
    $user_id = get_current_user_id();
    $notes   = get_user_meta( $user_id, 'dwf_dashboard_notes', true );

    if ( ! is_array( $notes ) ) {
        $notes = array();
    }

    if ( 1 === filter_input( INPUT_GET, 'dwf_note_saved', FILTER_VALIDATE_INT ) ) {
        echo '<div class="notice notice-success inline"><p>Notiz gespeichert.</p></div>';
    }

    if ( 1 === filter_input( INPUT_GET, 'dwf_note_deleted', FILTER_VALIDATE_INT ) ) {
        echo '<div class="notice notice-success inline"><p>Notiz gelöscht.</p></div>';
    }

    if ( $notes ) {
        echo '<ul style="margin-bottom:18px;">';

        foreach ( $notes as $note ) {
            if ( ! is_array( $note ) || empty( $note['id'] ) || empty( $note['text'] ) ) {
                continue;
            }

            echo '<li style="margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #dcdcde;">';
            echo '<div style="white-space:pre-wrap;margin-bottom:6px;">'
                . esc_html( $note['text'] )
                . '</div>';

            echo '<form action="' . esc_url( admin_url( 'admin-post.php' ) ) . '" method="post">';
            echo '<input type="hidden" name="action" value="dwf_delete_dashboard_note">';
            echo '<input type="hidden" name="note_id" value="' . esc_attr( $note['id'] ) . '">';
            wp_nonce_field( 'dwf_delete_dashboard_note_' . $note['id'] );
            submit_button( 'Löschen', 'delete small', 'submit', false );
            echo '</form>';
            echo '</li>';
        }

        echo '</ul>';
    } else {
        echo '<p>Noch keine Notiz gespeichert.</p>';
    }

    echo '<form action="' . esc_url( admin_url( 'admin-post.php' ) ) . '" method="post">';
    echo '<input type="hidden" name="action" value="dwf_save_dashboard_note">';
    wp_nonce_field( 'dwf_save_dashboard_note' );
    echo '<p><label for="dwf-dashboard-note"><strong>Neue Notiz</strong></label></p>';
    echo '<textarea id="dwf-dashboard-note" name="note" rows="4" maxlength="1000" class="widefat" required></textarea>';
    submit_button( 'Notiz speichern' );
    echo '</form>';
}

/**
 * Speichert eine neue Notiz für den angemeldeten Benutzer.
 */
function dwf_save_dashboard_note(): void {
    if ( ! is_user_logged_in() || ! current_user_can( 'read' ) ) {
        wp_die( 'Du darfst diese Funktion nicht verwenden.', '', array( 'response' => 403 ) );
    }

    check_admin_referer( 'dwf_save_dashboard_note' );

    $note_text = isset( $_POST['note'] )
        ? sanitize_textarea_field( wp_unslash( $_POST['note'] ) )
        : '';

    $note_text = wp_html_excerpt( $note_text, 1000, '' );

    if ( '' !== $note_text ) {
        $user_id = get_current_user_id();
        $notes   = get_user_meta( $user_id, 'dwf_dashboard_notes', true );

        if ( ! is_array( $notes ) ) {
            $notes = array();
        }

        $notes = array_slice( $notes, -19 );
        $notes[] = array(
            'id'   => wp_generate_uuid4(),
            'text' => $note_text,
        );

        update_user_meta( $user_id, 'dwf_dashboard_notes', $notes );
    }

    wp_safe_redirect(
        add_query_arg( 'dwf_note_saved', '1', admin_url( 'index.php' ) )
    );
    exit;
}
add_action( 'admin_post_dwf_save_dashboard_note', 'dwf_save_dashboard_note' );

/**
 * Löscht eine Notiz des angemeldeten Benutzers.
 */
function dwf_delete_dashboard_note(): void {
    if ( ! is_user_logged_in() || ! current_user_can( 'read' ) ) {
        wp_die( 'Du darfst diese Funktion nicht verwenden.', '', array( 'response' => 403 ) );
    }

    $note_id = isset( $_POST['note_id'] )
        ? sanitize_text_field( wp_unslash( $_POST['note_id'] ) )
        : '';

    check_admin_referer( 'dwf_delete_dashboard_note_' . $note_id );

    $user_id = get_current_user_id();
    $notes   = get_user_meta( $user_id, 'dwf_dashboard_notes', true );

    if ( is_array( $notes ) && '' !== $note_id ) {
        $notes = array_values(
            array_filter(
                $notes,
                static function ( $note ) use ( $note_id ): bool {
                    if ( ! is_array( $note ) || empty( $note['id'] ) ) {
                        return true;
                    }

                    return ! hash_equals( (string) $note['id'], $note_id );
                }
            )
        );

        update_user_meta( $user_id, 'dwf_dashboard_notes', $notes );
    }

    wp_safe_redirect(
        add_query_arg( 'dwf_note_deleted', '1', admin_url( 'index.php' ) )
    );
    exit;
}
add_action( 'admin_post_dwf_delete_dashboard_note', 'dwf_delete_dashboard_note' );
Persönliche Notizen im WordPress-Dashboard
Persönliche Dashboard-Notizen werden benutzerbezogen gespeichert.

Eine Nonce bestätigt die Absicht einer Aktion. Sie ersetzt keine Berechtigungsprüfung. Deshalb kontrollieren die beiden Handler zusätzlich, ob der Benutzer angemeldet ist und mindestens die Fähigkeit read besitzt.

Eigene Linkliste als Dashboard-Widget

Eine Linkliste bündelt häufig genutzte Ziele. Du kannst die Beitragsübersicht, die Mediathek, Deine Website und externe Arbeitswerkzeuge aufnehmen.

Eigene Linkliste im WordPress-Dashboard
Eine persönliche Linkliste verkürzt häufige Wege im Backend.
/**
 * Registriert eine anpassbare Linkliste im Dashboard.
 */
function dwf_register_links_dashboard_widget(): void {
    wp_add_dashboard_widget(
        'dwf_links_dashboard_widget',
        'Wichtige Links',
        'dwf_render_links_dashboard_widget'
    );
}
add_action( 'wp_dashboard_setup', 'dwf_register_links_dashboard_widget' );

/**
 * Gibt interne und externe Arbeitslinks aus.
 */
function dwf_render_links_dashboard_widget(): void {
    $links = array(
        array(
            'label'   => 'Beiträge bearbeiten',
            'url'     => admin_url( 'edit.php' ),
            'new_tab' => false,
        ),
        array(
            'label'   => 'Mediathek öffnen',
            'url'     => admin_url( 'upload.php' ),
            'new_tab' => false,
        ),
        array(
            'label'   => 'Website anzeigen',
            'url'     => home_url( '/' ),
            'new_tab' => true,
        ),
        array(
            'label'   => 'Google Search Console',
            'url'     => 'https://search.google.com/search-console',
            'new_tab' => true,
        ),
    );

    echo '<ul>';

    foreach ( $links as $link ) {
        $target = ! empty( $link['new_tab'] )
            ? ' target="_blank" rel="noopener noreferrer"'
            : '';

        echo '<li>';
        echo '<a href="' . esc_url( $link['url'] ) . '"' . $target . '>';
        echo esc_html( $link['label'] );
        echo '</a>';
        echo '</li>';
    }

    echo '</ul>';
}

Definiere Deine Ziele gesammelt im Array $links. Dadurch kannst Du sie später an einer Stelle ändern.

Adminimize als Alternative ohne eigene Snippets

Das kostenlose Plugin Adminimize kann Menüs, Untermenüs, Adminbar-Elemente, Meta-Boxen und weitere Backend-Bereiche abhängig von Benutzerrollen ausblenden. Es eignet sich besonders für Kunden-Websites und Redaktionen mit unterschiedlichen Aufgaben.

WordPress-Backend mit Adminimize aufräumen
Adminimize bietet viele Einstellungen zum Ausblenden von Backend-Elementen.

Stand 8. August 2026: Auf WordPress.org wird Adminimize in Version 1.11.14 angeboten. Version 1.11.12 schloss laut Changelog eine Schwachstelle bei der Zugriffskontrolle. Verwende deshalb keine ältere Version und halte das Plugin aktuell.

Adminimize reduziert und versteckt vorhandene Backend-Bereiche. Eigene Suchfelder, Notizen, RSS-Feeds oder individuelle Linklisten fügt es nicht hinzu. Dafür brauchst Du weiterhin ein Snippet oder ein spezialisiertes Plugin.

Teste Rollenänderungen mit einem separaten Benutzerkonto. Das bloße Ausblenden eines Menüpunktes ersetzt keine serverseitige Berechtigungsprüfung.

Fehlerbehebung: Wenn eine Dashboard-Anpassung nicht funktioniert

Das Widget bleibt sichtbar

Bleibt ein Widget sichtbar, stimmen häufig die Widget-ID oder der Kontext normal beziehungsweise side nicht. Bei Plugin-Widgets können sich beide Werte nach einem Update ändern. Der Hook sollte außerdem mit einer ausreichend späten Priorität laufen.

Fehlt ein Adminbar-Link, muss die Adminbar im Benutzerprofil aktiviert sein. Außerdem benötigt Dein Benutzer die im jeweiligen Snippet geprüfte Fähigkeit. Der Search-Console-Link setzt manage_options voraus, das Suchfeld edit_posts.

Nach der Aktivierung erscheint ein kritischer Fehler

Deaktiviere das zuletzt eingeschaltete Snippet. Bei einem eigenen Plugin kannst Du den Plugin-Ordner vorübergehend umbenennen. Prüfe anschließend das WordPress-Debug-Protokoll. Meine Anleitung zum WordPress-Debugging erklärt die passenden Schritte.

Sicherheit und Wartung der Dashboard-Snippets

  • Eine Funktion pro Snippet: So kannst Du problematischen Code gezielt deaktivieren.
  • Berechtigungen kontrollieren: Prüfe Fähigkeiten mit current_user_can().
  • Formulare absichern: Verwende Nonces, bereinige Eingaben und prüfe die Benutzerrechte.
  • Eindeutige Präfixe verwenden: Eigene Funktionen, IDs und Metaschlüssel benötigen ein individuelles Präfix wie dwf_.
  • Nach Updates testen: Plugin-Widget-IDs und experimentelle Oberflächen können sich ändern.
  • Rückweg vorbereiten: Halte fest, wie Du jedes Snippet wieder deaktivierst.

Fazit: Das WordPress-Dashboard passend zum Arbeitsablauf einrichten

Beginne mit Ansicht anpassen, wenn Du lediglich einige Widgets für Dein Benutzerkonto ausblenden möchtest. Nutze Code erst dann, wenn Einstellungen verbindlich für mehrere Benutzer gelten oder eigene Funktionen hinzukommen sollen.

Für umfangreiche rollenabhängige Anpassungen kann Adminimize die schnellere Lösung sein. Eigene Notizen, RSS-Feeds, Suchfelder und Linklisten bleiben Aufgaben für gezielt geprüfte Snippets.

Häufige Fragen zum WordPress-Dashboard

Was ist der Unterschied zwischen Dashboard und Adminbereich?

Das Dashboard ist die Startseite des WordPress-Backends. Der Adminbereich umfasst zusätzlich Beiträge, Medien, Plugins, Benutzer und Einstellungen. Die Adminbar ist die obere Werkzeugleiste für angemeldete Benutzer.

Kann ich WordPress-Dashboard-Widgets ohne Code ausblenden?

Ja. Öffne im Dashboard oben rechts „Ansicht anpassen“ und entferne die Häkchen bei nicht benötigten Widgets. Diese Einstellung gilt nur für Dein Benutzerkonto.

Wie entferne ich ein Dashboard-Widget dauerhaft?

Nutze den Hook wp_dashboard_setup zusammen mit remove_meta_box(). Das Willkommen-Panel entfernst Du stattdessen über remove_action().

Muss ich dafür die functions.php bearbeiten?

Nein. Verwende für die Beispiele besser ein kleines eigenes Plugin oder ein Snippet-Plugin. So bleiben die Anpassungen bei einem Theme-Update erhalten und Du kannst sie bei Problemen getrennt deaktivieren.

Wie werden eigene Dashboard-Notizen sicher gespeichert?

Das Beispiel speichert die Notizen benutzerbezogen in der WordPress-Datenbank. Es setzt kein zusätzliches Cookie. Verwende die Notizfunktion nicht für Passwörter oder vertrauliche Informationen.

Ist das neue anpassbare Gutenberg-Dashboard bereits Standard?

Nein. Im August 2026 ist es weiterhin ein Experiment des Gutenberg-Plugins. Die Anleitung auf dieser Seite bezieht sich auf das klassische Dashboard von WordPress Core.

Wann ist Adminimize statt eigener Snippets sinnvoll?

Adminimize eignet sich, wenn Du vorhandene Menüs, Adminbar-Elemente oder Eingabefelder abhängig von Benutzerrollen ausblenden möchtest. Für neue Dashboard-Funktionen brauchst Du weiterhin ein Snippet oder Plugin.

Transparenzhinweis: Dieser Artikel wurde mithilfe künstlicher Intelligenz strukturiert und formuliert. Ich habe den Inhalt anschließend fachlich geprüft, überarbeitet und trage die redaktionelle Verantwortung.

War dieser Beitrag hilfreich?

DerWebfuchs-Logo

„Der Webfuchs“ ist das Pseudonym von Stephan Bloemers. Ich baue seit den späten 90ern Websites und teile hier praxisnahe WordPress-, GeneratePress- und SEO-Tipps – ohne Blabla, dafür mit klaren Schritten und Snippets.

Schreibe einen Kommentar