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;
}
?>
Другие вопросы по тегам