Übernehmen Sie benutzerdefinierte CSS für die Benutzerrolle

Wie kann ich benutzerdefiniertes CSS für die Benutzerrolle sowohl für das Dashboard als auch für das Frontend anwenden? Für das Dashboard habe ich Folgendes festgelegt:

if( current_user_can('seller', 'partner')) { function admin_style() { wp_enqueue_style('admin-styles', get_template_directory_uri().'/admin.css'); } add_action('admin_enqueue_scripts', 'admin_style'); } else { } 

Wie man den Code ändert, um auch auf Front zu laden? btw, Ist if( current_user_can('seller', 'partner')) korrekt für die Überprüfung, ist die Benutzerrolle seller und partner ?

Solutions Collecting From Web of "Übernehmen Sie benutzerdefinierte CSS für die Benutzerrolle"

Um CSS in WordPress einzuordnen, können Sie Folgendes verwenden:

  • wp_enqueue_scripts Aktion für das Frontend
  • Aktion login_scripts für die Anmeldeseite
  • admin_scripts Aktion für die Admin-Seite, wie Sie bereits wissen

Um Benutzerrollen zu überprüfen, sollten Sie das Benutzerobjekt abrufen und die Rolleneigenschaft prüfen. current_user_can() ist eine function zum Überprüfen von functionen, nicht von Rollen.

So fügen Sie CSS basierend auf Benutzerrollen im Frontend hinzu:

 add_action( 'enqueue_scripts', 'cyb_enqueue_styles' ); function cyb_enqueue_styles() { $user = wp_get_current_user(); if( ! empty( $user ) && count( array_intersect( [ "seller", "partner" ], (array) $user->roles ) ) ) { wp_enqueue_style( 'my-style', get_template_directory_uri().'/some-style.css' ); } }