我正在尝试让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重命名为纯文本,我可以获得完整的编辑器,但它不会保存。
答案 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/