Ceci est mon code actuel:
$initial_data = $this->options['my_plugin_editor'];
$settings = array(
'quicktags' => array('buttons' => 'em,strong,link',),
'quicktags' => true,
'tinymce' => true,
'textarea_rows' => 20,
);
$id = 'my_plugin_editor_options[my_plugin_editor]';
wp_editor($initial_data,$id,$settings);
Le problème est que je ne parviens pas à définir la largeur de l'éditeur. Je peux définir la hauteur 'textarea_rows' => 20
, mais je ne suis pas au courant d'un moyen de définir la largeur (cols).
Si j'utilise une zone de texte standard sans éditeur, cela fonctionne bien cols="120"
Comment définir les cols dans la fonction wp_editor?
Il y a deux paramètres que vous pouvez utiliser pour changer la taille de l'éditeur de texte généré avec wp_editor()
.
$settings = array(
'editor_height' => 425, // In pixels, takes precedence and has no default value
'textarea_rows' => 20, // Has no visible effect if editor_height is set, default is 20
);
editor_height
est fourni, sa valeur brute sera utiliséetextarea_rows
(ou sa valeur par défaut de 20) sera utilisé pour calculer la hauteur correspondante en pixelsVoici quelques exemples du résultat de la conversion de textarea_rows
en pixels (cela se fait côté client):
$settings = array(
'tinymce' => array(
'width' => 200
)
);
Vous donne un tinymce large de 200px. Je l'ai trouvé ici: http://www.tinymce.com/wiki.php/Configuration
Lorsque j'ai essayé, la couleur de fond de mon tinymce a changé. Alors peut-être que vous devez modifier cela.
OK, voici ce que je viens de faire qui fonctionne bien:
echo "<div style='width:75%;'>";
wp_editor( $content, 'myid', $settings );
echo "</div>";
Je ne suis pas sûr si vous pouvez même définir le "nombre" de colonnes dans le tableau.
Mais un moyen d’atteindre ce que vous voulez consiste à ajouter une classe à votre wp_editor.
$settings = array(
'quicktags' => array('buttons' => 'em,strong,link',),
'quicktags' => true,
'tinymce' => true,
'textarea_rows' => 20,
'classes' => 'yourclass',
);
ou quand vous appelez le wp_editor:
<?php wp_editor( $content, $editor_id, $settings = array('editor_class'=>'yourclass') ); ?>
Ensuite, définissez simplement la largeur dans css:
.yourclass {
width: 400px !important; //add !important if your style is being overriden
}