Функция возвращает текстовое поле с прикрученными к нему TinyMCE (визуальный) и Quicktags (HTML) редакторами, также добавляет свой JavaScript через функцию wp_footer, если используется на страницах сайта (т.е. не в админке).
Имеется возможность загрузки файлов.
wp_editor( $content, $editor_id, $settings = array() ) |
- $content
- (строка) содержимое текстового поля, то есть какой-то текст или HTML-код, который нужно засунуть в редактор по умолчанию
- $editor_id
- (строка) HTML-атрибут
id
текстового поляtextarea
, может содержать только буквы в нижнем регистре - $setting
- (массив) настройки редактора
- wpautop
- (логическое) нужно ли использовать функцию wpautop() для добавления параграфов
По умолчанию:true
- media_buttons
- (логическое) нужно ли вставить кнопку «Добавить медиафайл» над редактором:
Кнопка появляется только в том случае, если у текущего пользователя имеются права на загрузку файлов!
По умолчанию:true
- textarea_name
- (строка) HTML-атрибут
name
текстового поля, можно использовать с[]
для передачи параметров в виде массива
По умолчанию:$editor_id
- textarea_rows
- (целое число) значение HTML-атрибута
rows
текстового поля
По умолчанию:get_option('default_post_edit_rows', 10)
- tabindex
- (целое число) значение HTML-атрибута
tabindex
- editor_css
- (строка) дополнительные CSS-стили, которые нужно применить к редактору, должны быть заключены в тег
<style>
, поддерживается атрибутscope
- editor_class
- (строка) дополнительные классы для
<textarea>
- teeny
- (логическое) нужно ли вывести только минимальную конфигурацию редактора без возможности отображения дополнительной панели
По умолчанию:false
- dfw
- (логическое) нужно ли заменить обычный вариант полноэкранного отображения на вариант, используемый в админке (DFW)
По умолчанию:false
- tinymce
- (массив) нужно ли задействовать визуальный редактор TinyMCE, также позволяет передавать настройки непосредственно в TinyMCE через массив
По умолчанию:true
- quicktags
- (массив) нужно ли задействовать вкладку HTML-редактора Quicktags, также позволяет передавать настройки непосредственно в Quicktags через массив
По умолчанию:true
Добавление второго редактора на страницу редактирования поста
В оригинальной документации WordPress не советуют добавлять редактор в перемещаемый метабокс в админке, однако я добавлял, все было ок… и тем не менее вот альтернативное рекомендуемое решение:
/* * функция добавления редактора */ function true_double_editor() { global $post; echo '<h2>Описание</h2>'; // заголовок ко второму редактору wp_editor( get_post_meta($post->ID, '_true_editor_data', true), 'trueeditor' ); } add_action( 'edit_form_advanced', 'true_double_editor' ); add_action( 'edit_page_form', 'true_double_editor' ); /* * функция сохранения данных */ function true_save_double_editor($post_id){ update_post_meta($post_id, '_true_editor_data', $_POST['trueeditor']); } add_action('save_post', 'true_save_double_editor'); |
Пример использования редактора
Самое главное — если используете редактор непосредственно в теме (например в форме комментирования), убедитесь, что добавили функцию wp_footer() где-нибудь перед закрывающим тегом </body>
, иначе редактор появится, но не будет работать. Я даже в примере хотел это показать, но потом передумал.
$settings = array( 'textarea_name' => 'true_content', 'editor_class' => 'my_redactor commons', // несколько классов через пробел 'dfw' => true, 'quicktags' => false ); wp_editor( '', 'truewpeditor', $settings ); |
Источник: misha.blog