web-dev-qa-db-fra.com

Comment afficher le CSS frontal pour l'administrateur uniquement

On m'a demandé de relooker le css d'une interface Web WordPress. Le site Web ne peut pas être en mode maintenance pendant le travail car il doit rester opérationnel tout le temps. Je suppose que si je pouvais ajouter une petite condition discrète dans l'en-tête permettant à l'administrateur de voir un fichier css différent de celui des utilisateurs, je pourrais éditer le fichier css et tester le résultat pendant que les utilisateurs voient encore la version d'origine du site Web. De cette façon, je pourrais travailler sur le design sans que personne ne le remarque.

Quelqu'un peut-il me dire quelle fonction WordPress je dois appeler sur l'en-tête pour changer le fichier css si et seulement si l'utilisateur est un administrateur?

Le mieux serait de ne pas éditer le fichier "functions.php" ou d'activer un plugin, car je ne veux vraiment pas gâcher le site Web tel qu'il est (peu de chances mais des chances quand même). Je préférerais éditer le fichier "header.php" dans le dossier du thème pour être sûr que rien ne se passe mal.

Je vous remercie.

1
Baylock

Vous devriez pouvoir simplement vérifier les capacités de l'utilisateur actuellement connecté. S'il s'agit d'un administrateur, l'exemple suivant doit faire ce que vous voulez. Ajoutez simplement ceci dans le fichier functions.php de votre thème.

Veuillez noter que ce code n'a pas été testé, mais il devrait vous mener là où vous le souhaitez. Si la fonctionnalité level_10 ne fonctionne pas, vous pouvez consulter la documentation des autres niveaux et fonctionnalités utilisateur ici .

add_action( 'wp_enqueue_scripts', 'admin_only_stylesheet' );

function admin_only_stylesheet() {

    if ( current_user_can('level_10') {

        wp_register_style( 'admin-only-style', get_template_directory_uri() . '/css/admin-frontend-style.css', array(), '12345678', 'all' );

        wp_enqueue_style( 'admin-only-style' );

    }

}
1
Dwayne Charrington