X

Dezactivați editorul HTML Tinymce pentru toată lumea, cu excepția administratorului

Fragmente de IsItWP

Căutați o modalitate de a dezactiva editorul HTML TinyMCE pentru toată lumea, cu excepția administratorului? Deși probabil există un plugin pentru asta, am creat o scurtă secțiune de cod pe care o puteți folosi pentru a dezactiva editorul HTML TinyMCE pentru toată lumea, cu excepția administratorului în WordPress.

Instrucțiuni:

Tot ce trebuie să faceți este să adăugați acest cod în fișierul functions.php al temei dvs. sau într-un plugin specific site-ului:

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>';
	}
}

Alternativ, ați putea folosi această secțiune de cod, care va dezactiva TinyMCE pentru toată lumea, cu excepția listei specificate de utilizatori. Adăugați acest cod în fișierul functions.php al temei dvs. sau într-un plugin specific site-ului.

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>';
    }
} 

Notă: Dacă aceasta este prima dată când adăugați fragmente de cod în WordPress, consultați ghidul nostru despre cum să adăugați corect fragmente de cod în WordPress, pentru a nu vă defecta accidental site-ul.

Dacă v-a plăcut această secțiune de cod, vă rugăm să luați în considerare vizionarea altor articole de pe site, cum ar fi: 27 cele mai bune teme de afaceri WordPress pentru site-ul dvs. și cum să configurați urmărirea descărcărilor în WordPress cu Google Analytics.

Comentarii   Lasă un răspuns

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

    […] [Sursă] […]

  2. Dezactivare și display:none; nu sunt chiar același lucru…

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

    Se pare că puteți folosi firebug și îl puteți activa din nou și îl puteți folosi și totuși scrie javascript.
    Nu este sigur.

  4. Snipped frumos. A trebuit să folosesc următorul CSS pentru a face acest lucru să funcționeze: a#content-html {display: none !important;}

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

    Hei Kevin,

    Mi-ar plăcea foarte mult să văd acest cod încă activ…există vreo șansă de actualizare pentru WP 3.5?

    Deocamdată, nu văd că funcționează…

    1. Avinash D’Souza:
      funcționează pentru mine! – înlocuiți partea de stil cu aceasta:

      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. Hei Kevin — snipped grozav și am învățat din el, așa cum fac din majoritatea codurilor tale. Urmare bizară, cum putem dezactiva complet zona de text? CE!!!! LOL
    Ok, am un tip de postare personalizat, fără nimic altceva decât câmpuri personalizate pentru intrare (folosind pluginul de șabloane pentru câmpuri personalizate) și tot codul este în șablonul php al postării personalizate. Știu că are legătură cu ‘display: none’  dar nu știu care este codul “display”. Cred că îl pot pune într-o foaie de stil separată cu add_editor_style și pot folosi o condiție if (is_singular) pentru a afișa doar pe postarea personalizată.

    Mulțumesc

    1. Salut Mike, poți elimina Editorul din tipul de postare personalizat eliminând acele opțiuni din array-ul supports din codul tipului tău de postare personalizat.

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

  7. Mulțumesc, exact ce aveam nevoie.

    1. Super, mă bucur că am putut ajuta.

  8. Mulțumesc, util!

    1. Mă bucur să ajut, Nick,

  9. Există vreo modalitate de a face acest lucru specific utilizatorului?

    1.  Da, ai putea face ceva de genul acesta, ar trebui să funcționeze. Folosind o listă de persoane dintr-un array și verificând utilizatorul curent. Dacă utilizatorul nu este în array-ul $users, elimini editorul 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;}’;
          }
      }

Adaugă un comentariu

Suntem bucuroși că ați ales să lăsați un comentariu. Vă rugăm să rețineți că toate comentariile sunt moderate conform politicii noastre de confidențialitate, iar toate linkurile sunt nofollow. NU folosiți cuvinte cheie în câmpul nume. Să avem o conversație personală și semnificativă.

Lista de verificare pentru lansarea WordPress

Lista de verificare finală pentru lansarea WordPress

Am compilat toate elementele esențiale de verificare pentru lansarea următorului dvs. site WordPress într-o singură carte electronică la îndemână.
Da, trimite-mi eBook-ul gratuit!