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. Can only be /[a-z]+/.


(array) (Optional) See _WP_Editors::editor().

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
WP-3.3.0 Introduced.