自定义Wordpress小部件中的WYSIWYG编辑器

时间:2017-07-11 15:06:07

标签: javascript wordpress tinymce wysiwyg

Replacing a textarea with WordPress TinyMCE wp_editor()

我已按照上述指南,但所见即所得有一些问题。

$text = str_replace(array("\r", "\n"), '', $instance['text']);

$settings = array( 'textarea_name' => $this->get_field_name('text') );
wp_editor( esc_attr( $text ), 'text', $settings );

结果如下:

result

标签不会切换(有时最初选择文本,有时是Visual)。 “添加媒体”按钮似乎可以正常工作,但是当单击“插入到帖子”时,模态会消失并且没有任何反应。

控制台里什么都没有,所以我不确定出了什么问题。可能有人知道发生了什么,或者可能是为了开始计算出来的方向?

1 个答案:

答案 0 :(得分:0)

也许有点太晚了,但几分钟前我看过帖子并遇到同样的问题。

我尝试了Wordpress代码参考中的示例:https://developer.wordpress.org/reference/functions/wp_editor/

所以你不需要$ settings来初始化编辑器,只需像这样使用它:

wp_editor( $content, $editor_id );

用于小部件:

public function form( $instance ) {
    $text = $instance['text'];
    wp_editor(esc_attr( $text ),  $this->get_field_id( 'text' ));
}

又有一个问题。 您需要编辑器的唯一ID ,如下所述:https://wordpress.stackexchange.com/questions/82670/why-cant-wp-editor-be-used-in-a-custom-widget

希望这有帮助!