Summery Summery
Enqueue assets needed by the code editor for the given settings.
Syntax Syntax
Parameters Parameters
- $args
-
(Required) Args.
- 'type'
(string) The MIME type of the file to be edited. - 'file'
(string) Filename to be edited. Extension is used to sniff the type. Can be supplied as alternative to$typeparam. - 'theme'
(WP_Theme) Theme being edited when on theme editor. - 'plugin'
(string) Plugin being edited when on plugin editor. - 'codemirror'
(array) Additional CodeMirror setting overrides. - 'csslint'
(array) CSSLint rule overrides. - 'jshint'
(array) JSHint rule overrides. - 'htmlhint'
(array) JSHint rule overrides.
- 'type'
Return Return
(array|false) Settings for the enqueued code editor, or false if the editor was not enqueued.
Source Source
File: wp-includes/general-template.php
*
* @return bool True if the user can access the visual editor, false otherwise.
*/
function user_can_richedit() {
global $wp_rich_edit, $is_gecko, $is_opera, $is_safari, $is_chrome, $is_IE, $is_edge;
if ( ! isset( $wp_rich_edit ) ) {
$wp_rich_edit = false;
if ( 'true' === get_user_option( 'rich_editing' ) || ! is_user_logged_in() ) { // Default to 'true' for logged out users.
if ( $is_safari ) {
$wp_rich_edit = ! wp_is_mobile() || ( preg_match( '!AppleWebKit/(\d+)!', $_SERVER['HTTP_USER_AGENT'], $match ) && intval( $match[1] ) >= 534 );
} elseif ( $is_IE ) {
$wp_rich_edit = ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Trident/7.0;' ) !== false );
} elseif ( $is_gecko || $is_chrome || $is_edge || ( $is_opera && ! wp_is_mobile() ) ) {
$wp_rich_edit = true;
}
}
}
/**
* Filters whether the user can access the visual editor.
*
* @since 2.1.0
*
* @param bool $wp_rich_edit Whether the user can access the visual editor.
*/
return apply_filters( 'user_can_richedit', $wp_rich_edit );
}
/**
* Find out which editor should be displayed by default.
*
* Works out which of the two editors to display as the current editor for a
* user. The 'html' setting is for the "Text" editor tab.
*
* @since 2.5.0
*
* @return string Either 'tinymce', or 'html', or 'test'
*/
function wp_default_editor() {
$r = user_can_richedit() ? 'tinymce' : 'html'; // Defaults.
if ( wp_get_current_user() ) { // Look for cookie.
$ed = get_user_setting( 'editor', 'tinymce' );
$r = ( in_array( $ed, array( 'tinymce', 'html', 'test' ), true ) ) ? $ed : $r;
}
/**
* Filters which editor should be displayed by default.
*
* @since 2.5.0
*
* @param string $r Which editor should be displayed by default. Either 'tinymce', 'html', or 'test'.
*/
return apply_filters( 'wp_default_editor', $r );
}
/**
* 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.
*
Advertisement
Changelog Changelog
| Version | Description |
|---|---|
| 4.9.0 | Introduced. |