wp_editor игнорирует пользовательские настройки для "Отключить визуальный редактор при записи"
Я использую функцию WordPress wp_editor() в WordPress. Появится редактор WYSIWYG, например, для создания постов и страниц.
Я использую эту функцию в пользовательском плагине. Когда я впервые использовал его, на нем не отображались две кнопки для переключения между визуальным режимом и текстовым режимом, а только текстовый режим.
После некоторых поисков я обнаружил, что это была настройка пользователя. Если вы зайдете в wp-admin->users->edit user, вы увидите настройку: "Отключить визуальный редактор при записи" с флажком.
Как только я снял галочку, это сработало для этого пользователя. Тем не менее, я ищу способ показа кнопок, даже если для пользователя установлен отключенный визуальный редактор, значение true.
Итак, мой вопрос: как я могу использовать функцию wp_editor() в плагине для отображения редактора WordPress WYSIWYG с кнопками для визуального и текстового режима, независимо от текущих настроек пользователя.
1 ответ
Я нашел решение для этого. Функция wp_editor() вызывает класс, который проверяет пользовательскую настройку "Отключить визуальный редактор при записи" с помощью функции user_can_richedit(). Поэтому добавление временного фильтра может перезаписать это:
<?php
add_filter('user_can_richedit','richEditOverwrite',999999);
wp_editor($content,$editor_id);
remove_filter( 'the_content', 'richEditOverwrite' );
/**
* Overwrites user_can_richedit()
* @return bool
*/
function richEditOverwrite(){
return true;
}
?>