Как установить ширину WYSIWYG редактора в функции wp_editor()?

1 сент. 2013 г., 11:55:51
Просмотры: 16.7K
Голосов: 5

Вот мой текущий код:

$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);

Проблема в том, что я не могу установить ширину редактора. Я могу задать высоту 'textarea_rows' => 20, но не знаю, как установить ширину (cols).

Если я использую стандартное текстовое поле без редактора, это работает хорошо: cols="120"

Как установить cols в функции wp_editor?

0
Все ответы на вопрос 4
1
13

Есть два параметра, которые можно использовать для изменения размера текстового редактора, создаваемого с помощью wp_editor(), вот они:

$settings = array(
    'editor_height' => 425, // В пикселях, имеет приоритет и не имеет значения по умолчанию
    'textarea_rows' => 20,  // Не оказывает видимого эффекта, если задан editor_height, по умолчанию 20
);
  • Если указан editor_height, будет использовано его точное значение
  • В противном случае textarea_rows (или его значение по умолчанию 20) будет использовано для вычисления соответствующей высоты в пикселях

Полезно знать:

Вот несколько примеров результата преобразования из textarea_rows в пиксели (это выполняется на стороне клиента):

  • 0 до 3 => 100
  • 4 => 113
  • 5 => 133
  • 10 => 230
  • 15 => 328
  • 20 => 425
  • ...
2 окт. 2014 г. 19:42:57
Комментарии

Я думаю, что вопрос был о ширине, а не о высоте.

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

Задает ширину редактора tinymce в 200px. Нашел это здесь: http://www.tinymce.com/wiki.php/Configuration

Когда я попробовал это, цвет фона моего tinymce изменился. Возможно, вам придется подправить это.

12 мар. 2014 г. 23:56:55
Комментарии

Работает как часы, спасибо

Karue Benson Karue Karue Benson Karue
14 июн. 2020 г. 11:33:20
1

Хорошо, вот что я только что сделал, и это хорошо работает:

echo "<div style='width:75%;'>";
wp_editor( $content, 'myid', $settings );
echo "</div>";
18 мая 2018 г. 06:32:47
Комментарии

Хотя этот вариант работает, я рекомендую добавить параметр, как описано в других ответах.

Christine Cooper Christine Cooper
25 апр. 2019 г. 11:54:19
0

Я не уверен, можно ли вообще установить cols"number" в массиве.

Но один из способов достичь желаемого — это добавить класс к вашему wp_editor.

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

или при вызове wp_editor:

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

Затем просто задайте ширину в CSS:

 .yourclass {
   width: 400px !important; //добавьте !important, если ваш стиль переопределяется
 }   
1 сент. 2013 г. 12:43:11