Supporto » Funzionalità = Plugin » aggiungere un bottone al tenymce modalità teeny

  • Ciao a tutti,
    sono riuscito ad aggiungere un bottone al tinymce con questo codice:

    add_action ('admin_init', 'my_tinymce_button');
    function my_tinymce_button() {
         if ( current_user_can( 'edit_posts' ) && current_user_can( 'edit_pages' ) ) {
              add_filter( 'mce_buttons', 'my_register_tinymce_button' );
              add_filter( 'mce_external_plugins', 'my_add_tinymce_button' );
         }
    }
    //This callback registers our plug-in
    function my_add_tinymce_button( $plugin_array ) {
         $plugin_array['year_button_plugin'] = plugin_dir_url(__FILE__) . "index.js";
         return $plugin_array;
    }
    //This callback adds our button to the toolbar
    function my_register_tinymce_button($buttons)
    {
        //register buttons with their id.
        array_push($buttons, "green");
        return $buttons;
    }
    add_filter("mce_buttons", "my_register_tinymce_button");

    Vorrei però aggiungerlo all’editor quando usa la versione ristretta cioè la teeny, qualcuno sa come si fa?
    Grazie in anticipo

Stai vedendo 2 repliche - dal 1 al 2 (di 2 totali)
  • Moderatore Guido Scialfa

    (@wido)

    Ciao @inventor4fun,

    Da codice vedo che non si può aggiungere lo script esterno, puoi soltanto filtrare, ho fatto un test ed effettivamente la variabile che dovrebbe contenere la lista degli scripts esterni non viene impostata per $set['teeny'] = true.

    Per maggiori info visita questo link https://core.trac.wordpress.org/browser/tags/4.6.1/src/wp-includes/class-wp-editor.php#L362 che ti mostra esattamente la porzione che si occupa di inserire i bottoni e gli scripts esterni, quelli legati alla hook mce_external_plugins.

    Per quanto riguarda i plugins puoi filtrarli tramite teeny_mce_plugins, ma come puoi ben notare non verrà mai eseguita la hook mce_external_plugins per poter aggiungere plugins esterni.

    Ergo, credo che l’unico modo sia tentare di raggirare il sistema lavorando direttamente sul plugin tinymce ma non ho tale esperienza da dirti come fare, inoltre nella documentazione di tinymce non ho trovato riferimenti ad una versione teeny, ipotizzo quindi sia solo una feature di WordPress.

    Grazie per la risposta, mi sa che la mia unica soluzione sarà utilizzare il wp_editor completo e rimuovere/nascondere tutti i pulsanti che non mi interessano.
    Buona giornata

Stai vedendo 2 repliche - dal 1 al 2 (di 2 totali)
  • Il topic ‘aggiungere un bottone al tenymce modalità teeny’ è chiuso a nuove risposte.