X

Désactiver l'éditeur HTML Tinymce pour tous sauf l'administrateur

Extraits par IsItWP

Vous cherchez un moyen de désactiver l'éditeur HTML TinyMCE pour tout le monde sauf l'administrateur ? Bien qu'il existe probablement un plugin pour cela, nous avons créé un extrait de code rapide que vous pouvez utiliser pour désactiver l'éditeur HTML TinyMCE pour tout le monde sauf l'administrateur dans WordPress.

Instructions :

Il vous suffit d'ajouter ce code au fichier functions.php de votre thème ou dans un plugin spécifique au site :

add_filter( 'wp_default_editor', create_function('', 'return "tinymce";') );
add_action( 'admin_head', 'disable_html_editor_wps' );
function disable_html_editor_wps() {
	global $current_user;
	get_currentuserinfo();
	if ($current_user->user_level != 10) {
		echo '<style type="text/css">#editor-toolbar #edButtonHTML, #quicktags {display: none;}</style>';
	}
}

Alternativement, vous pouvez utiliser cet extrait de code, qui désactivera TinyMCE pour tous sauf la liste d'utilisateurs spécifiée. Ajoutez ce code au fichier functions.php de votre thème ou dans un plugin spécifique au site.

add_filter( 'wp_default_editor', create_function('', 'return "tinymce";') );
add_action( 'admin_head', 'disable_html_editor_wps' );
function disable_html_editor_wps() {
 
    global $current_user;
    get_currentuserinfo();
 
    // change users in list
    $users = array(
                              "dave",
                              "larry",
                              "steve",
                              "ryan"
                            );
 
    if (!in_array($current_user->user_login, $users)) {
        echo '<style type="text/css">#editor-toolbar #edButtonHTML, #quicktags {display: none;}</style>';
    }
} 

Remarque : Si c'est la première fois que vous ajoutez des extraits de code dans WordPress, veuillez consulter notre guide sur la manière d'ajouter correctement des extraits de code dans WordPress, afin de ne pas endommager accidentellement votre site.

Si vous avez aimé cet extrait de code, n'hésitez pas à consulter nos autres articles sur le site tels que : 27 meilleurs thèmes WordPress pour votre site web et comment configurer le suivi des téléchargements dans WordPress avec Google Analytics.

Commentaires   Laisser une réponse

  1. WordPress Conditional Tags (And Snippets) for Beginners March 7, 2015 at 5:44 am

    […] [Source] […]

  2. Désactiver et display:none; ne sont pas vraiment la même chose...

  3. Fredrik Persson May 27, 2014 at 10:02 am

    Il semble que vous puissiez utiliser firebug et l'activer à nouveau, l'utiliser et toujours écrire du javascript.
    Pas sûr.

  4. Bon extrait. J'ai dû utiliser le CSS suivant pour que cela fonctionne : a#content-html {display: none !important;}

  5. Avinash D'Souza January 8, 2013 at 9:22 am

    Salut Kevin,

    J'aimerais vraiment voir ce code toujours actif... y a-t-il une chance de mise à jour pour WP 3.5 ?

    Pour l'instant, je ne vois pas cela fonctionner...

    1. Avinash D’Souza:
      cela fonctionne pour moi ! – remplacez la partie style par ceci :

      html.wp-toolbar
      body.wp-admin div#wpwrap div#wpcontent div#wpbody div#wpbody-content
      div.wrap form#post div#poststuff div#post-body.metabox-holder
      div#post-body-content div#postdivrich.postarea
      div#wp-content-wrap.wp-core-ui
      div#wp-content-editor-tools.wp-editor-tools
      a#content-tmce.wp-switch-editor

  6. Salut Kevin — super extrait et j'ai appris de lui comme de la plupart de ton code. Suivi bizarre, comment pouvons-nous désactiver complètement la zone de texte ? QUOI !!!! LOL
    Ok, j'ai un type de publication personnalisé avec rien d'autre que des champs personnalisés pour la saisie (en utilisant le plugin de modèle de champs personnalisés) et tout le code est dans le modèle php de publication personnalisée. Je sais que cela a quelque chose à voir avec 'display: none'  mais je ne sais pas quel est le code "display". Je pense que je peux le mettre dans une feuille de style séparée avec add_editor_style et utiliser une condition if (is_singular) pour l'afficher uniquement sur la publication personnalisée.

    Merci

    1. Salut Mike, vous pouvez supprimer l'éditeur du type de publication personnalisé en supprimant ces options du tableau 'supports' dans votre code de type de publication personnalisé.

      ‘supports’ => array( ‘title’, ‘editor’, ‘excerpt’, ‘custom-fields’, ‘thumbnail’ ),

  7. Merci, c'est exactement ce dont j'avais besoin.

    1. Cool, content d'avoir pu aider.

  8. Merci, utile !

    1. Content d'aider Nick,

  9. Y a-t-il un moyen de rendre cela spécifique à l'utilisateur ?

    1.  Oui, vous pourriez faire quelque chose comme ceci, cela devrait fonctionner. Utiliser une liste de personnes dans un tableau et vérifier par rapport à l'utilisateur actuel. Si l'utilisateur n'est pas dans le tableau $users, vous supprimez l'éditeur HTML.

      add_filter( ‘wp_default_editor’, create_function(”, ‘return “tinymce”;’) );
      add_action( ‘admin_head’, ‘disable_html_editor_wps’ );
      function disable_html_editor_wps() {

          global $current_user;
          get_currentuserinfo();

          $users = array(“dave”, “larry”, “steve”, “ryan”);

          if (!in_array($current_user->user_login, $users)) {
              echo ‘#editor-toolbar #edButtonHTML, #quicktags {display: none;}’;
          }

Ajouter un commentaire

Nous sommes heureux que vous ayez choisi de laisser un commentaire. N'oubliez pas que tous les commentaires sont modérés conformément à notre politique de confidentialité, et tous les liens sont nofollow. N'utilisez PAS de mots-clés dans le champ nom. Ayons une conversation personnelle et significative.

Liste de contrôle de lancement WordPress

La checklist ultime pour lancer un WordPress

Nous avons compilé tous les éléments essentiels de la liste de contrôle pour le lancement de votre prochain site Web WordPress dans un ebook pratique.
Oui, envoyez-moi l'eBook gratuit !