Использование функции wp_editor в WordPress
29 Мая 2022г. в 04:33Что такое wp_editor?
Это функция WordPress, которая выводит на страницах или записях редактор WYSIWYG, такой же, как и используемый в инструментах администрирования. Функция доступна в версиях начиная с WordPress v3.3. Детальное описание wp_editor в Codex. WordPress использует версию редактора TinyMCE (официальный сайт редактора). Файлы редактора располагаются в директории wp-includes/js/tinymce в папке с установленным WordPress.
Редактор TinyMCE
Зачем она нужна?
Мы можем использовать функцию wp_editor при работе с плагинами и содержанием проекта. Форматированное содержание может потребоваться не только в записях. Мы можем использовать несколько редакторов на одной странице, нужно только правильно применять переменные идентификации и распределять содержание.
Примеры
Переменные $content и $editor_id являются обязательными. А переменная $settings представляет массив для включения/выключений опций редактора.
Ниже приводится 4 вызова функции с разными опциями:
01
/**
02
* Обязательные переменные
03
*/
04
wp_editor( $content, $editor_id );
05
/**
06
* Основной синтаксис
07
*/
08
wp_editor( $content, $editor_id, $settings = array() );
09
/**
10
* 1.
11
* Первая переменная устанавливает содержание, которое выводится в окне редактора.
12
* Вторая переменная содержит атрибут id редактора
13
* (значение должно быть написано в нижнем регистре без подчеркиваний и тире).
14
*/
15
wp_editor( 'Тестовый текст', 'ourmaineditor' );
16
/**
17
* 2.
18
* Данный код выводит редактор и кнопку отправки.
19
* Окно содержит 15 строк, отключается использование тегов редактирования
20
* и используется конфигурация PressThis.
21
*/
22
$args = array(
23
'textarea_rows' => 15,
24
'teeny' => true,
25
'quicktags' => false
26
);
27
wp_editor( 'Тестовый текст', 'editor', $args );
28
submit_button( 'Сохранить' );
29
/**
30
* 3.
31
* Мы можем создавать редактор записи с помощью функции get_post,
32
* которая возвращает содержание определенной записи (в нашем случае №117)
33
* из базы данных.
34
*/
35
$post = get_post( 117, 'OBJECT' );
36
wp_editor( $post, 'editor' );
37
/**
38
* 4.
39
* Пользовательские кнопки редактора.
40
* Список с разделением запятой, например: link, unlink, bold, ...
41
*/
42
$settings = array(
43
'textarea_name' => 'content',
44
'media_buttons' => false,
45
'tinymce' => array(
46
'theme_advanced_buttons1' => 'formatselect,|,bold,italic,underline,|,' .
47
'bullist,blockquote,|,justifyleft,justifycenter' .
48
',justifyright,justifyfull,|,link,unlink,|' .
49
',spellchecker,wp_fullscreen,wp_adv'
50
)
51
);
52
wp_editor( '', 'content', $settings );
Настройка редактора
Редактор можно настроить с помощью различных опций, описанных в Codex. Также для лучшего понимания вопроса использования редактора стоит разобраться с файлом class-wp-editor.php в папке wp-includes в вашей установке WordPress.