Come impostare la larghezza dell'editor WYSIWYG nella funzione wp_editor()?

1 set 2013, 11:55:51
Visualizzazioni: 16.7K
Voti: 5

Questo è il mio codice attuale:

$initial_data = $this->options['my_plugin_editor'];
$settings = array(
    'quicktags' => array('buttons' => 'em,strong,link',), // Tag rapidi disponibili
    'quicktags' => true, // Abilita i tag rapidi
    'tinymce' => true, // Abilita TinyMCE
    'textarea_rows' => 20, // Numero di righe dell'editor
);
$id = 'my_plugin_editor_options[my_plugin_editor]';
wp_editor($initial_data,$id,$settings);

Il problema è che non riesco a impostare la larghezza dell'editor. Posso impostare l'altezza 'textarea_rows' => 20, ma non sono a conoscenza di un modo per impostare la larghezza (cols).

Se utilizzo una textarea standard senza editor, questo funziona bene cols="120"

Come posso impostare cols nella funzione wp_editor?

0
Tutte le risposte alla domanda 4
1
13

Ci sono due parametri che puoi utilizzare per modificare le dimensioni dell'editor di testo generato con wp_editor(), eccoli qui:

$settings = array(
    'editor_height' => 425, // In pixel, ha la precedenza e non ha un valore predefinito
    'textarea_rows' => 20,  // Non ha effetto visibile se è impostato editor_height, il valore predefinito è 20
);
  • Se viene fornito editor_height, verrà utilizzato il suo valore esatto
  • Altrimenti textarea_rows (o il suo valore predefinito di 20) verrà utilizzato per calcolare l'altezza corrispondente in pixel

Da sapere:

Ecco alcuni esempi del risultato della conversione da textarea_rows a pixel (questa conversione viene effettuata lato client):

  • 0 a 3 => 100
  • 4 => 113
  • 5 => 133
  • 10 => 230
  • 15 => 328
  • 20 => 425
  • ...
2 ott 2014 19:42:57
Commenti

Penso che la domanda riguardasse la larghezza, non l'altezza.

Vlado Vlado
18 ago 2023 15:20:54
1
$settings = array(
    'tinymce' => array(
        'width' => 200
    )
);

Ti fornisce un editor TinyMCE con larghezza di 200px. L'ho trovato qui: http://www.tinymce.com/wiki.php/Configuration

Quando l'ho provato, il colore di sfondo del mio TinyMCE è cambiato. Quindi potrebbe essere necessario modificarlo.

12 mar 2014 23:56:55
Commenti

Ha funzionato perfettamente, grazie

Karue Benson Karue Karue Benson Karue
14 giu 2020 11:33:20
1

OK, ecco cosa ho appena fatto e funziona bene:

echo "<div style='width:75%;'>";
wp_editor( $content, 'myid', $settings );
echo "</div>";
18 mag 2018 06:32:47
Commenti

Anche se suppongo che questo funzioni, suggerisco di aggiungere il parametro invece, come delineato nelle altre risposte.

Christine Cooper Christine Cooper
25 apr 2019 11:54:19
0

Non sono sicuro che sia possibile impostare il numero di colonne (cols) nell'array.

Ma un modo per ottenere quello che vuoi sarebbe aggiungere una classe al tuo wp_editor.

 $settings = array(
'quicktags' => array('buttons' => 'em,strong,link',),
'quicktags' => true,
'tinymce' => true,
'textarea_rows' => 20,
 'classes' => 'yourclass',
 );

oppure quando chiami wp_editor:

 <?php wp_editor( $content, $editor_id, $settings = array('editor_class'=>'yourclass') ); ?>

Poi imposta semplicemente la larghezza in css:

 .yourclass {
   width: 400px !important; //aggiungi !important se il tuo stile viene sovrascritto
 }   
1 set 2013 12:43:11