Wordpress wp_editor支架bug解决方法

时间:2014-08-07 07:04:39

标签: php wordpress wysiwyg

我正在尝试让wysiwyg编辑器在自定义选项页面上工作。 但我不允许使用方括号作为编辑ID。

这是我目前正在使用的代码。 (以此为起点:http://themeshaper.com/2010/06/03/sample-theme-options/

            <?php

                $content =  $options['sometextarea'];
                $editor_id = 'some_theme_options[sometextarea]';

                $settings =   array(
                    'wpautop' => false, 
                    'media_buttons' => false, 
                    'textarea_name' => $editor_id,
                    'textarea_rows' => get_option('default_post_edit_rows', 10), 
                    'tinymce' => true,
                    'quicktags' => true
                );
                wp_editor( $content , $editor_id, $settings  );

                ?>

有人可以向我解释如何让这个工作吗? 使用当前代码,我只能通过quicktags获得所见即所得的编辑器。如果我将$ editor_id重命名为纯文本,我可以获得完整的编辑器,但它不会保存。

2 个答案:

答案 0 :(得分:2)

我终于让它正常工作了!

这是:

                <?php

                $content =  $options['sometextarea'];
                $editor_id = 'sometextarea';

                $settings =   array(
                    'wpautop' => false, 
                    'media_buttons' => false, 
                    'textarea_name' => 'mythemename_theme_options[sometextarea]', //You can use brackets here !
                    'textarea_rows' => get_option('default_post_edit_rows', 10), 
                    'tabindex' => '323',
                    'editor_css' => '', 
                    'editor_class' => '',
                    'teeny' => false, 
                    'dfw' => false,
                    'tinymce' => true, 
                    'quicktags' => true 
                );
                wp_editor( $content , $editor_id, $settings  );

                ?>

答案 1 :(得分:0)

此问题是由$editor_id参数引起的,因此给它起一个不带方括号[]的名称,因此可以给它一个普通的ID,例如my_text_area_id_['textarea']来代替my-textarea-id,它应该可以工作!

wp_editor( 

   string $content, 

    string $editor_id, 

   array $settings = array() 
);

参考:https://developer.wordpress.org/reference/functions/wp_editor/