wp_editor( string $content, string $editor_id, array $settings = array() )

Renders an editor.


Using this function is the proper way to output all needed components for both TinyMCE and Quicktags. _WP_Editors should not be used directly. See https://core.trac.wordpress.org/ticket/17144.

NOTE: Once initialized the TinyMCE editor cannot be safely moved in the DOM. For that reason running wp_editor() inside of a meta box is not a good idea unless only Quicktags is used. On the post edit screen several actions can be used to include additional editors containing TinyMCE: ‘edit_page_form’, ‘edit_form_advanced’ and ‘dbx_post_sidebar’. See https://core.trac.wordpress.org/ticket/19173 for more information.

See also



(string) (Required) Initial content for the editor.


(string) (Required) HTML ID attribute value for the textarea and TinyMCE. Should not contain square brackets.


(array) (Optional) See _WP_Editors::parse_settings() for description.

Default value: array()


File: wp-includes/general-template.php

function wp_editor( $content, $editor_id, $settings = array() ) {
	if ( ! class_exists( '_WP_Editors', false ) ) {
		require ABSPATH . WPINC . '/class-wp-editor.php';
	_WP_Editors::editor( $content, $editor_id, $settings );


Version Description
3.3.0 Introduced.

© 2003–2019 WordPress Foundation
Licensed under the GNU GPLv2+ License.