Um bestimmte Bildschirm-Elemente im WordPress-Dashboard auszublenden, kannst du benutzerdefinierte Funktionen verwenden, die auf spezifische Dashboard-Widgets und Meta-Boxen abzielen. Dies ermöglicht es, das Dashboard für Benutzer sauber und übersichtlich zu halten und unnötige Elemente zu entfernen.
Schritt-für-Schritt-Anleitung
- Entferne Dashboard-Widgets: Verwende den Hook
wp_dashboard_setup, um Dashboard-Widgets zu entfernen. - Entferne Meta-Boxen auf bestimmten Seiten: Verwende den Hook
add_meta_boxes, um Meta-Boxen aus den Editoren (z. B. Beiträge, Seiten) zu entfernen. - Verwende Benutzerrollen-Überprüfungen, um spezifische Anpassungen je nach Benutzerrolle vorzunehmen.
Beispielcode zur Umsetzung
Füge den folgenden Code in die functions.php-Datei deines WordPress-Themes oder in ein benutzerdefiniertes Plugin ein:
// Funktion zum Entfernen von Dashboard-Widgets
function remove_dashboard_widgets() {
// Nur für Abonnenten
if (current_user_can('subscriber')) {
// Entferne das "Willkommen"-Panel
remove_action('welcome_panel', 'wp_welcome_panel');
// Entferne das "Schneller Entwurf"-Widget
remove_meta_box('dashboard_quick_press', 'dashboard', 'side');
// Entferne das "Aktivitäten"-Widget
remove_meta_box('dashboard_activity', 'dashboard', 'normal');
// Entferne das "WordPress-Nachrichten"-Widget
remove_meta_box('dashboard_primary', 'dashboard', 'side');
// Entferne das "Ereignisse und Neuigkeiten"-Widget
remove_meta_box('dashboard_secondary', 'dashboard', 'side');
// Entferne das "Willkommen"-Widget
remove_meta_box('dashboard_welcome', 'dashboard', 'normal');
}
}
add_action('wp_dashboard_setup', 'remove_dashboard_widgets');
// Funktion zum Entfernen von Meta-Boxen im Editor-Bereich
function remove_meta_boxes() {
// Nur für Abonnenten
if (current_user_can('subscriber')) {
// Entferne Meta-Boxen von Beiträgen
remove_meta_box('authordiv', 'post', 'normal'); // Autoren-Box
remove_meta_box('categorydiv', 'post', 'side'); // Kategorie-Box
remove_meta_box('tagsdiv-post_tag', 'post', 'side'); // Schlagwörter-Box
// Entferne Meta-Boxen von Seiten
remove_meta_box('authordiv', 'page', 'normal'); // Autoren-Box
remove_meta_box('postcustom', 'page', 'normal'); // Benutzerdefinierte Felder
}
}
add_action('add_meta_boxes', 'remove_meta_boxes');
Erklärung des Codes:
current_user_can('subscriber'): Überprüft, ob der aktuell angemeldete Benutzer die Rolle „Abonnent“ hat. Der Code wird nur für diese Benutzerrolle ausgeführt.remove_action('welcome_panel', 'wp_welcome_panel'): Entfernt das „Willkommen“-Panel aus dem Dashboard.remove_meta_box('dashboard_quick_press', 'dashboard', 'side'): Entfernt das „Schneller Entwurf“-Widget aus dem Dashboard.remove_meta_box('dashboard_activity', 'dashboard', 'normal'): Entfernt das „Aktivitäten“-Widget aus dem Dashboard.remove_meta_box('dashboard_primary', 'dashboard', 'side'): Entfernt das „WordPress-Nachrichten“-Widget aus dem Dashboard.remove_meta_box('authordiv', 'post', 'normal'): Entfernt die Autoren-Box von Beitragsseiten im Editor-Bereich.remove_meta_box('categorydiv', 'post', 'side'): Entfernt die Kategorie-Box von Beitragsseiten im Editor-Bereich.
Anpassen des Codes
- Wenn du die Widgets und Meta-Boxen für andere Benutzerrollen entfernen möchtest, kannst du
current_user_can('subscriber')durch eine andere Rolle ersetzen, wieadministrator,editor,author, etc. - Wenn du mehr Widgets oder Boxen entfernen möchtest, kannst du die entsprechenden
remove_meta_box()-Funktionen hinzufügen, die zu den IDs der Widgets passen, die du entfernen möchtest.
Fazit
Dieser Ansatz ermöglicht es dir, das WordPress-Dashboard für spezifische Benutzerrollen anzupassen, indem du bestimmte Bildschirm-Elemente ausblendest. Das resultiert in einer vereinfachten Benutzeroberfläche, die auf die Bedürfnisse der Benutzer zugeschnitten ist und unnötige Ablenkungen vermeidet.
Wenn Sie mehr zum Thema Remove meta erfahren moechten, lesen Sie in diesem Beitrag weiter.
