it-swarm.com.de

Wie ändere ich das Aussehen und Verhalten des gesamten WordPress Admin-Panels?

Ich versuche, das Erscheinungsbild des WordPress Admin-Bedienfelds in Abhängigkeit von den verschiedenen Rollentypen in WordPress zu ändern. Wie können verschiedene Themen für jede Rolle erstellt/zugewiesen werden?.

  • Editor> Admin Panel Theme 1
  • Author> Admin Panel Theme 2
  • Contributor> Admin-Panel-Thema 3
  • Abonnent> Admin-Panel-Thema 4

oder auch für den Website-Administrator auch.

was ich suche, ist die WordPress Admin Panel HTML-Struktur/Layout, Benutzeroberfläche zu ändern.

Gibt es irgendwelche Haken oder Aktionen, bitte anleiten.

Grüße,

5
FaisalShehzad

Hier ist ein großartiger Codex-Artikel zum Thema Erstellen eines Verwaltungsthemas: http://codex.wordpress.org/Creating_Admin_Themes

Zurück zu Ihrer Frage: Sie möchten verschiedene Stylesheets für verschiedene Benutzerrollen laden, um zu überprüfen, wer der aktuelle Benutzer ist. Beachten Sie, dass die Prüfung mit der Funktion current_user_can () durchgeführt wird und die Administratorprüfung nicht mit is_admin () durchgeführt wird (dies ist eine Prüfung, ob Ihr Skript auf der Administrationsseite Ihres Webs geladen wird, nicht für Administrator).

Leicht modifiziert erstes Codebeispiel eines Codex

<?php
function my_admin_theme_style() {
    if ( current_user_can( 'manage_options' ) ) { //means it is an administrator
        $style = 'my-admin-theme-administrator.css';
    } else if ( current_user_can( 'edit_others_posts' ) ) { //editor
        $style = 'my-admin-theme-editor.css';
    } else if ( current_user_can( 'edit_published_posts' ) ) { //author
        $style = 'my-admin-theme-author.css';
    } else if ( current_user_can( 'edit_posts' ) ) { //contributor
        $style = 'my-admin-theme-contributor.css';
    } else { //anyone else - means subscriber
        $style = 'my-admin-theme-subscriber.css';
    }
    wp_enqueue_style('my-admin-theme', plugins_url($style, __FILE__));
}
add_action('admin_enqueue_scripts', 'my_admin_theme_style');

function my_admin_theme_login_style() {
    //we can't differentiate unlogged users theme so we are falling back to subscriber
    $style = 'my-admin-theme-subscriber.css';
    wp_enqueue_style('my-admin-theme', plugins_url($style, __FILE__));
}
add_action('login_enqueue_scripts', 'my_admin_theme_login_style');

Auf der Seite Rollen und Funktionen finden Sie außerdem eine Vorstellung davon, wie Sie Benutzerrollen unterscheiden können.

Prost!

4
david.binda