wp_editor忽略"写入"时禁用可视编辑器的用户设置

时间:2015-07-05 19:01:09

标签: wordpress tinymce wysiwyg wp-editor

我在wordpress中使用wordpress函数wp_editor()。这将显示WYSIWYG编辑器,如用于创建帖子和页面的编辑器。

我在自定义插件中使用此功能。当我第一次使用它时,它没有显示在视觉模式和文本模式之间切换的两个按钮,而只是文本模式。

经过一番搜索,我发现这是一个用户设置。如果您转到wp-admin-> users->编辑用户,您将看到以下设置:"编写"时禁用可视编辑器。带有一个复选框。

一旦我取消选中,它就适用于该用户。但是,即使用户将禁用的可视编辑器设置设置为true,我也在寻找显示按钮的方法。

所以我的问题是:如何在插件中使用wp_editor()函数来显示带有视觉和文本模式按钮的wordpress WYSIWYG编辑器,无论当前用户设置如何。

1 个答案:

答案 0 :(得分:0)

我找到了解决方法。函数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;
}
?>