+
+/**
+ * Open the file handle for debugging.
+ *
+ * @since 0.71
+ * @deprecated 3.4.0 Use error_log()
+ * @see error_log()
+ *
+ * @link http://www.php.net/manual/en/function.error-log.php
+ *
+ * @param string $filename File name.
+ * @param string $mode Type of access you required to the stream.
+ * @return false Always false.
+ */
+function debug_fopen( $filename, $mode ) {
+ _deprecated_function( __FUNCTION__, 'error_log()' );
+ return false;
+}
+
+/**
+ * Write contents to the file used for debugging.
+ *
+ * @since 0.71
+ * @deprecated 3.4.0 Use error_log()
+ * @see error_log()
+ *
+ * @link http://www.php.net/manual/en/function.error-log.php
+ *
+ * @param mixed $fp Unused.
+ * @param string $string Message to log.
+ */
+function debug_fwrite( $fp, $string ) {
+ _deprecated_function( __FUNCTION__, 'error_log()' );
+ if ( ! empty( $GLOBALS['debug'] ) )
+ error_log( $string );
+}
+
+/**
+ * Close the debugging file handle.
+ *
+ * @since 0.71
+ * @deprecated 3.4.0 Use error_log()
+ * @see error_log()
+ *
+ * @link http://www.php.net/manual/en/function.error-log.php
+ *
+ * @param mixed $fp Unused.
+ */
+function debug_fclose( $fp ) {
+ _deprecated_function( __FUNCTION__, 'error_log()' );
+}
+
+/**
+ * Retrieve list of themes with theme data in theme directory.
+ *
+ * The theme is broken, if it doesn't have a parent theme and is missing either
+ * style.css and, or index.php. If the theme has a parent theme then it is
+ * broken, if it is missing style.css; index.php is optional.
+ *
+ * @since 1.5.0
+ * @deprecated 3.4.0 Use wp_get_themes()
+ * @see wp_get_themes()
+ *
+ * @return array Theme list with theme data.
+ */
+function get_themes() {
+ _deprecated_function( __FUNCTION__, '3.4', 'wp_get_themes()' );
+
+ global $wp_themes;
+ if ( isset( $wp_themes ) )
+ return $wp_themes;
+
+ $themes = wp_get_themes();
+ $wp_themes = array();
+
+ foreach ( $themes as $theme ) {
+ $name = $theme->get('Name');
+ if ( isset( $wp_themes[ $name ] ) )
+ $wp_themes[ $name . '/' . $theme->get_stylesheet() ] = $theme;
+ else
+ $wp_themes[ $name ] = $theme;
+ }
+
+ return $wp_themes;
+}
+
+/**
+ * Retrieve theme data.
+ *
+ * @since 1.5.0
+ * @deprecated 3.4.0 Use wp_get_theme()
+ * @see wp_get_theme()
+ *
+ * @param string $theme Theme name.
+ * @return array|null Null, if theme name does not exist. Theme data, if exists.
+ */
+function get_theme( $theme ) {
+ _deprecated_function( __FUNCTION__, '3.4', 'wp_get_theme( $stylesheet )' );
+
+ $themes = get_themes();
+ if ( is_array( $themes ) && array_key_exists( $theme, $themes ) )
+ return $themes[ $theme ];
+ return null;
+}
+
+/**
+ * Retrieve current theme name.
+ *
+ * @since 1.5.0
+ * @deprecated 3.4.0 Use wp_get_theme()
+ * @see wp_get_theme()
+ *
+ * @return string
+ */
+function get_current_theme() {
+ _deprecated_function( __FUNCTION__, '3.4', 'wp_get_theme()' );
+
+ if ( $theme = get_option( 'current_theme' ) )
+ return $theme;
+
+ return wp_get_theme()->get('Name');
+}
+
+/**
+ * Accepts matches array from preg_replace_callback in wpautop() or a string.
+ *
+ * Ensures that the contents of a `<pre>...</pre>` HTML block are not
+ * converted into paragraphs or line-breaks.
+ *
+ * @since 1.2.0
+ * @deprecated 3.4.0
+ *
+ * @param array|string $matches The array or string
+ * @return string The pre block without paragraph/line-break conversion.
+ */
+function clean_pre($matches) {
+ _deprecated_function( __FUNCTION__, '3.4' );
+
+ if ( is_array($matches) )
+ $text = $matches[1] . $matches[2] . "</pre>";
+ else
+ $text = $matches;
+
+ $text = str_replace(array('<br />', '<br/>', '<br>'), array('', '', ''), $text);
+ $text = str_replace('<p>', "\n", $text);
+ $text = str_replace('</p>', '', $text);
+
+ return $text;
+}
+
+
+/**
+ * Add callbacks for image header display.
+ *
+ * @since 2.1.0
+ * @deprecated 3.4.0 Use add_theme_support()
+ * @see add_theme_support()
+ *
+ * @param callable $wp_head_callback Call on 'wp_head' action.
+ * @param callable $admin_head_callback Call on custom header administration screen.
+ * @param callable $admin_preview_callback Output a custom header image div on the custom header administration screen. Optional.
+ */
+function add_custom_image_header( $wp_head_callback, $admin_head_callback, $admin_preview_callback = '' ) {
+ _deprecated_function( __FUNCTION__, '3.4', 'add_theme_support( \'custom-header\', $args )' );
+ $args = array(
+ 'wp-head-callback' => $wp_head_callback,
+ 'admin-head-callback' => $admin_head_callback,
+ );
+ if ( $admin_preview_callback )
+ $args['admin-preview-callback'] = $admin_preview_callback;
+ return add_theme_support( 'custom-header', $args );
+}
+
+/**
+ * Remove image header support.
+ *
+ * @since 3.1.0
+ * @deprecated 3.4.0 Use remove_theme_support()
+ * @see remove_theme_support()
+ *
+ * @return null|bool Whether support was removed.
+ */
+function remove_custom_image_header() {
+ _deprecated_function( __FUNCTION__, '3.4', 'remove_theme_support( \'custom-header\' )' );
+ return remove_theme_support( 'custom-header' );
+}
+
+/**
+ * Add callbacks for background image display.
+ *
+ * @since 3.0.0
+ * @deprecated 3.4.0 Use add_theme_support()
+ * @see add_theme_support()
+ *
+ * @param callable $wp_head_callback Call on 'wp_head' action.
+ * @param callable $admin_head_callback Call on custom background administration screen.
+ * @param callable $admin_preview_callback Output a custom background image div on the custom background administration screen. Optional.
+ */
+function add_custom_background( $wp_head_callback = '', $admin_head_callback = '', $admin_preview_callback = '' ) {
+ _deprecated_function( __FUNCTION__, '3.4', 'add_theme_support( \'custom-background\', $args )' );
+ $args = array();
+ if ( $wp_head_callback )
+ $args['wp-head-callback'] = $wp_head_callback;
+ if ( $admin_head_callback )
+ $args['admin-head-callback'] = $admin_head_callback;
+ if ( $admin_preview_callback )
+ $args['admin-preview-callback'] = $admin_preview_callback;
+ return add_theme_support( 'custom-background', $args );
+}
+
+/**
+ * Remove custom background support.
+ *
+ * @since 3.1.0
+ * @deprecated 3.4.0 Use add_custom_background()
+ * @see add_custom_background()
+ *
+ * @return null|bool Whether support was removed.
+ */
+function remove_custom_background() {
+ _deprecated_function( __FUNCTION__, '3.4', 'remove_theme_support( \'custom-background\' )' );
+ return remove_theme_support( 'custom-background' );
+}
+
+/**
+ * Retrieve theme data from parsed theme file.
+ *
+ * @since 1.5.0
+ * @deprecated 3.4.0 Use wp_get_theme()
+ * @see wp_get_theme()
+ *
+ * @param string $theme_file Theme file path.
+ * @return array Theme data.
+ */
+function get_theme_data( $theme_file ) {
+ _deprecated_function( __FUNCTION__, '3.4', 'wp_get_theme()' );
+ $theme = new WP_Theme( basename( dirname( $theme_file ) ), dirname( dirname( $theme_file ) ) );
+
+ $theme_data = array(
+ 'Name' => $theme->get('Name'),
+ 'URI' => $theme->display('ThemeURI', true, false),
+ 'Description' => $theme->display('Description', true, false),
+ 'Author' => $theme->display('Author', true, false),
+ 'AuthorURI' => $theme->display('AuthorURI', true, false),
+ 'Version' => $theme->get('Version'),
+ 'Template' => $theme->get('Template'),
+ 'Status' => $theme->get('Status'),
+ 'Tags' => $theme->get('Tags'),
+ 'Title' => $theme->get('Name'),
+ 'AuthorName' => $theme->get('Author'),
+ );
+
+ foreach ( apply_filters( 'extra_theme_headers', array() ) as $extra_header ) {
+ if ( ! isset( $theme_data[ $extra_header ] ) )
+ $theme_data[ $extra_header ] = $theme->get( $extra_header );
+ }
+
+ return $theme_data;
+}
+
+/**
+ * Alias of update_post_cache().
+ *
+ * @see update_post_cache() Posts and pages are the same, alias is intentional
+ *
+ * @since 1.5.1
+ * @deprecated 3.4.0 Use update_post_cache()
+ * @see update_post_cache()
+ *
+ * @param array $pages list of page objects
+ */
+function update_page_cache( &$pages ) {
+ _deprecated_function( __FUNCTION__, '3.4', 'update_post_cache()' );
+
+ update_post_cache( $pages );
+}
+
+/**
+ * Will clean the page in the cache.
+ *
+ * Clean (read: delete) page from cache that matches $id. Will also clean cache
+ * associated with 'all_page_ids' and 'get_pages'.
+ *
+ * @since 2.0.0
+ * @deprecated 3.4.0 Use clean_post_cache
+ * @see clean_post_cache()
+ *
+ * @param int $id Page ID to clean
+ */
+function clean_page_cache( $id ) {
+ _deprecated_function( __FUNCTION__, '3.4', 'clean_post_cache()' );
+
+ clean_post_cache( $id );
+}
+
+/**
+ * Retrieve nonce action "Are you sure" message.
+ *
+ * Deprecated in 3.4.1 and 3.5.0. Backported to 3.3.3.
+ *
+ * @since 2.0.4
+ * @deprecated 3.4.1 Use wp_nonce_ays()
+ * @see wp_nonce_ays()
+ *
+ * @param string $action Nonce action.
+ * @return string Are you sure message.
+ */
+function wp_explain_nonce( $action ) {
+ _deprecated_function( __FUNCTION__, '3.4.1', 'wp_nonce_ays()' );
+ return __( 'Are you sure you want to do this?' );
+}
+
+/**
+ * Display "sticky" CSS class, if a post is sticky.
+ *
+ * @since 2.7.0
+ * @deprecated 3.5.0 Use post_class()
+ * @see post_class()
+ *
+ * @param int $post_id An optional post ID.
+ */
+function sticky_class( $post_id = null ) {
+ _deprecated_function( __FUNCTION__, '3.5', 'post_class()' );
+ if ( is_sticky( $post_id ) )
+ echo ' sticky';
+}
+
+/**
+ * Retrieve post ancestors.
+ *
+ * This is no longer needed as WP_Post lazy-loads the ancestors
+ * property with get_post_ancestors().
+ *
+ * @since 2.3.4
+ * @deprecated 3.5.0 Use get_post_ancestors()
+ * @see get_post_ancestors()
+ *
+ * @param WP_Post &$post Post object, passed by reference (unused).
+ */
+function _get_post_ancestors( &$post ) {
+ _deprecated_function( __FUNCTION__, '3.5' );
+}
+
+/**
+ * Load an image from a string, if PHP supports it.
+ *
+ * @since 2.1.0
+ * @deprecated 3.5.0 Use wp_get_image_editor()
+ * @see wp_get_image_editor()
+ *
+ * @param string $file Filename of the image to load.
+ * @return resource The resulting image resource on success, Error string on failure.
+ */
+function wp_load_image( $file ) {
+ _deprecated_function( __FUNCTION__, '3.5', 'wp_get_image_editor()' );
+
+ if ( is_numeric( $file ) )
+ $file = get_attached_file( $file );
+
+ if ( ! is_file( $file ) )
+ return sprintf(__('File “%s” doesn’t exist?'), $file);
+
+ if ( ! function_exists('imagecreatefromstring') )
+ return __('The GD image library is not installed.');
+
+ // Set artificially high because GD uses uncompressed images in memory
+ @ini_set( 'memory_limit', apply_filters( 'image_memory_limit', WP_MAX_MEMORY_LIMIT ) );
+ $image = imagecreatefromstring( file_get_contents( $file ) );
+
+ if ( !is_resource( $image ) )
+ return sprintf(__('File “%s” is not an image.'), $file);
+
+ return $image;
+}
+
+/**
+ * Scale down an image to fit a particular size and save a new copy of the image.
+ *
+ * The PNG transparency will be preserved using the function, as well as the
+ * image type. If the file going in is PNG, then the resized image is going to
+ * be PNG. The only supported image types are PNG, GIF, and JPEG.
+ *
+ * Some functionality requires API to exist, so some PHP version may lose out
+ * support. This is not the fault of WordPress (where functionality is
+ * downgraded, not actual defects), but of your PHP version.
+ *
+ * @since 2.5.0
+ * @deprecated 3.5.0 Use wp_get_image_editor()
+ * @see wp_get_image_editor()
+ *
+ * @param string $file Image file path.
+ * @param int $max_w Maximum width to resize to.
+ * @param int $max_h Maximum height to resize to.
+ * @param bool $crop Optional. Whether to crop image or resize.
+ * @param string $suffix Optional. File suffix.
+ * @param string $dest_path Optional. New image file path.
+ * @param int $jpeg_quality Optional, default is 90. Image quality percentage.
+ * @return mixed WP_Error on failure. String with new destination path.
+ */
+function image_resize( $file, $max_w, $max_h, $crop = false, $suffix = null, $dest_path = null, $jpeg_quality = 90 ) {
+ _deprecated_function( __FUNCTION__, '3.5', 'wp_get_image_editor()' );
+
+ $editor = wp_get_image_editor( $file );
+ if ( is_wp_error( $editor ) )
+ return $editor;
+ $editor->set_quality( $jpeg_quality );
+
+ $resized = $editor->resize( $max_w, $max_h, $crop );
+ if ( is_wp_error( $resized ) )
+ return $resized;
+
+ $dest_file = $editor->generate_filename( $suffix, $dest_path );
+ $saved = $editor->save( $dest_file );
+
+ if ( is_wp_error( $saved ) )
+ return $saved;
+
+ return $dest_file;
+}
+
+/**
+ * Retrieve a single post, based on post ID.
+ *
+ * Has categories in 'post_category' property or key. Has tags in 'tags_input'
+ * property or key.
+ *
+ * @since 1.0.0
+ * @deprecated 3.5.0 Use get_post()
+ * @see get_post()
+ *
+ * @param int $postid Post ID.
+ * @param string $mode How to return result, either OBJECT, ARRAY_N, or ARRAY_A.
+ * @return WP_Post|null Post object or array holding post contents and information
+ */
+function wp_get_single_post( $postid = 0, $mode = OBJECT ) {
+ _deprecated_function( __FUNCTION__, '3.5', 'get_post()' );
+ return get_post( $postid, $mode );
+}
+
+/**
+ * Check that the user login name and password is correct.
+ *
+ * @since 0.71
+ * @deprecated 3.5.0 Use wp_authenticate()
+ * @see wp_authenticate()
+ *
+ * @param string $user_login User name.
+ * @param string $user_pass User password.
+ * @return bool False if does not authenticate, true if username and password authenticates.
+ */
+function user_pass_ok($user_login, $user_pass) {
+ _deprecated_function( __FUNCTION__, '3.5', 'wp_authenticate()' );
+ $user = wp_authenticate( $user_login, $user_pass );
+ if ( is_wp_error( $user ) )
+ return false;
+
+ return true;
+}
+
+/**
+ * Callback formerly fired on the save_post hook. No longer needed.
+ *
+ * @since 2.3.0
+ * @deprecated 3.5.0
+ */
+function _save_post_hook() {}
+
+/**
+ * Check if the installed version of GD supports particular image type
+ *
+ * @since 2.9.0
+ * @deprecated 3.5.0 Use wp_image_editor_supports()
+ * @see wp_image_editor_supports()
+ *
+ * @param string $mime_type
+ * @return bool
+ */
+function gd_edit_image_support($mime_type) {
+ _deprecated_function( __FUNCTION__, '3.5', 'wp_image_editor_supports()' );
+
+ if ( function_exists('imagetypes') ) {
+ switch( $mime_type ) {
+ case 'image/jpeg':
+ return (imagetypes() & IMG_JPG) != 0;
+ case 'image/png':
+ return (imagetypes() & IMG_PNG) != 0;
+ case 'image/gif':
+ return (imagetypes() & IMG_GIF) != 0;
+ }
+ } else {
+ switch( $mime_type ) {
+ case 'image/jpeg':
+ return function_exists('imagecreatefromjpeg');
+ case 'image/png':
+ return function_exists('imagecreatefrompng');
+ case 'image/gif':
+ return function_exists('imagecreatefromgif');
+ }
+ }
+ return false;
+}
+
+/**
+ * Converts an integer byte value to a shorthand byte value.
+ *
+ * @since 2.3.0
+ * @deprecated 3.6.0 Use size_format()
+ * @see size_format()
+ *
+ * @param int $bytes An integer byte value.
+ * @return string A shorthand byte value.
+ */
+function wp_convert_bytes_to_hr( $bytes ) {
+ _deprecated_function( __FUNCTION__, '3.6', 'size_format()' );
+
+ $units = array( 0 => 'B', 1 => 'kB', 2 => 'MB', 3 => 'GB', 4 => 'TB' );
+ $log = log( $bytes, KB_IN_BYTES );
+ $power = (int) $log;
+ $size = pow( KB_IN_BYTES, $log - $power );
+
+ if ( ! is_nan( $size ) && array_key_exists( $power, $units ) ) {
+ $unit = $units[ $power ];
+ } else {
+ $size = $bytes;
+ $unit = $units[0];
+ }
+
+ return $size . $unit;
+}
+
+/**
+ * Formerly used internally to tidy up the search terms.
+ *
+ * @since 2.9.0
+ * @access private
+ * @deprecated 3.7.0
+ *
+ * @param string $t Search terms to "tidy", e.g. trim.
+ * @return string Trimmed search terms.
+ */
+function _search_terms_tidy( $t ) {
+ _deprecated_function( __FUNCTION__, '3.7' );
+ return trim( $t, "\"'\n\r " );
+}
+
+/**
+ * Determine if TinyMCE is available.
+ *
+ * Checks to see if the user has deleted the tinymce files to slim down
+ * their WordPress install.
+ *
+ * @since 2.1.0
+ * @deprecated 3.9.0
+ *
+ * @return bool Whether TinyMCE exists.
+ */
+function rich_edit_exists() {
+ global $wp_rich_edit_exists;
+ _deprecated_function( __FUNCTION__, '3.9' );
+
+ if ( ! isset( $wp_rich_edit_exists ) )
+ $wp_rich_edit_exists = file_exists( ABSPATH . WPINC . '/js/tinymce/tinymce.js' );
+
+ return $wp_rich_edit_exists;
+}
+
+/**
+ * Old callback for tag link tooltips.
+ *
+ * @since 2.7.0
+ * @access private
+ * @deprecated 3.9.0
+ *
+ * @param int $count Number of topics.
+ * @return int Number of topics.
+ */
+function default_topic_count_text( $count ) {
+ return $count;
+}
+
+/**
+ * Formerly used to escape strings before inserting into the DB.
+ *
+ * Has not performed this function for many, many years. Use wpdb::prepare() instead.
+ *
+ * @since 0.71
+ * @deprecated 3.9.0
+ *
+ * @param string $content The text to format.
+ * @return string The very same text.
+ */
+function format_to_post( $content ) {
+ _deprecated_function( __FUNCTION__, '3.9' );
+ return $content;
+}
+
+/**
+ * Formerly used to escape strings before searching the DB. It was poorly documented and never worked as described.
+ *
+ * @since 2.5.0
+ * @deprecated 4.0.0 Use wpdb::esc_like()
+ * @see wpdb::esc_like()
+ *
+ * @param string $text The text to be escaped.
+ * @return string text, safe for inclusion in LIKE query.
+ */
+function like_escape($text) {
+ _deprecated_function( __FUNCTION__, '4.0', 'wpdb::esc_like()' );
+ return str_replace( array( "%", "_" ), array( "\\%", "\\_" ), $text );
+}
+
+/**
+ * Determines if the URL can be accessed over SSL.
+ *
+ * Determines if the URL can be accessed over SSL by using the WordPress HTTP API to access
+ * the URL using https as the scheme.
+ *
+ * @since 2.5.0
+ * @deprecated 4.0.0
+ *
+ * @param string $url The URL to test.
+ * @return bool Whether SSL access is available.
+ */
+function url_is_accessable_via_ssl( $url ) {
+ _deprecated_function( __FUNCTION__, '4.0' );
+
+ $response = wp_remote_get( set_url_scheme( $url, 'https' ) );
+
+ if ( !is_wp_error( $response ) ) {
+ $status = wp_remote_retrieve_response_code( $response );
+ if ( 200 == $status || 401 == $status ) {
+ return true;
+ }
+ }
+
+ return false;
+}
+
+/**
+ * Start preview theme output buffer.
+ *
+ * Will only perform task if the user has permissions and template and preview
+ * query variables exist.
+ *
+ * @since 2.6.0
+ * @deprecated 4.3.0
+ */
+function preview_theme() {
+ _deprecated_function( __FUNCTION__, '4.3' );
+}
+
+/**
+ * Private function to modify the current template when previewing a theme
+ *
+ * @since 2.9.0
+ * @deprecated 4.3.0
+ * @access private
+ *
+ * @return string
+ */
+function _preview_theme_template_filter() {
+ _deprecated_function( __FUNCTION__, '4.3' );
+ return '';
+}
+
+/**
+ * Private function to modify the current stylesheet when previewing a theme
+ *
+ * @since 2.9.0
+ * @deprecated 4.3.0
+ * @access private
+ *
+ * @return string
+ */
+function _preview_theme_stylesheet_filter() {
+ _deprecated_function( __FUNCTION__, '4.3' );
+ return '';
+}
+
+/**
+ * Callback function for ob_start() to capture all links in the theme.
+ *
+ * @since 2.6.0
+ * @deprecated 4.3.0
+ * @access private
+ *
+ * @param string $content
+ * @return string
+ */
+function preview_theme_ob_filter( $content ) {
+ _deprecated_function( __FUNCTION__, '4.3' );
+ return $content;
+}
+
+/**
+ * Manipulates preview theme links in order to control and maintain location.
+ *
+ * Callback function for preg_replace_callback() to accept and filter matches.
+ *
+ * @since 2.6.0
+ * @deprecated 4.3.0
+ * @access private
+ *
+ * @param array $matches
+ * @return string
+ */
+function preview_theme_ob_filter_callback( $matches ) {
+ _deprecated_function( __FUNCTION__, '4.3' );
+ return '';
+}
+
+/**
+ * Formats text for the rich text editor.
+ *
+ * The filter 'richedit_pre' is applied here. If $text is empty the filter will
+ * be applied to an empty string.
+ *
+ * @since 2.0.0
+ * @deprecated 4.3.0
+ *
+ * @param string $text The text to be formatted.
+ * @return string The formatted text after filter is applied.
+ */
+function wp_richedit_pre($text) {
+ _deprecated_function( __FUNCTION__, '4.3', 'format_for_editor()' );
+
+ if ( empty( $text ) ) {
+ /**
+ * Filter text returned for the rich text editor.
+ *
+ * This filter is first evaluated, and the value returned, if an empty string
+ * is passed to wp_richedit_pre(). If an empty string is passed, it results
+ * in a break tag and line feed.
+ *
+ * If a non-empty string is passed, the filter is evaluated on the wp_richedit_pre()
+ * return after being formatted.
+ *
+ * @since 2.0.0
+ * @deprecated 4.3.0
+ *
+ * @param string $output Text for the rich text editor.
+ */
+ return apply_filters( 'richedit_pre', '' );
+ }
+
+ $output = convert_chars($text);
+ $output = wpautop($output);
+ $output = htmlspecialchars($output, ENT_NOQUOTES, get_option( 'blog_charset' ) );
+
+ /** This filter is documented in wp-includes/deprecated.php */
+ return apply_filters( 'richedit_pre', $output );
+}
+
+/**
+ * Formats text for the HTML editor.
+ *
+ * Unless $output is empty it will pass through htmlspecialchars before the
+ * 'htmledit_pre' filter is applied.
+ *
+ * @since 2.5.0
+ * @deprecated 4.3.0 Use format_for_editor()
+ * @see format_for_editor()
+ *
+ * @param string $output The text to be formatted.
+ * @return string Formatted text after filter applied.
+ */
+function wp_htmledit_pre($output) {
+ _deprecated_function( __FUNCTION__, '4.3', 'format_for_editor()' );
+
+ if ( !empty($output) )
+ $output = htmlspecialchars($output, ENT_NOQUOTES, get_option( 'blog_charset' ) ); // convert only < > &
+
+ /**
+ * Filter the text before it is formatted for the HTML editor.
+ *
+ * @since 2.5.0
+ * @deprecated 4.3.0
+ *
+ * @param string $output The HTML-formatted text.
+ */
+ return apply_filters( 'htmledit_pre', $output );
+}
+
+/**
+ * Retrieve permalink from post ID.
+ *
+ * @since 1.0.0
+ * @deprecated 4.4.0 Use get_permalink()
+ * @see get_permalink()
+ *
+ * @param int|WP_Post $post_id Optional. Post ID or WP_Post object. Default is global $post.
+ * @return string|false
+ */
+function post_permalink( $post_id = 0 ) {
+ _deprecated_function( __FUNCTION__, '4.4', 'get_permalink()' );
+
+ return get_permalink( $post_id );
+}
+
+/**
+ * Perform a HTTP HEAD or GET request.
+ *
+ * If $file_path is a writable filename, this will do a GET request and write
+ * the file to that path.
+ *
+ * @since 2.5.0
+ * @deprecated 4.4.0 Use WP_Http
+ * @see WP_Http
+ *
+ * @param string $url URL to fetch.
+ * @param string|bool $file_path Optional. File path to write request to. Default false.
+ * @param int $red Optional. The number of Redirects followed, Upon 5 being hit,
+ * returns false. Default 1.
+ * @return bool|string False on failure and string of headers if HEAD request.
+ */
+function wp_get_http( $url, $file_path = false, $red = 1 ) {
+ _deprecated_function( __FUNCTION__, '4.4', 'WP_Http' );
+
+ @set_time_limit( 60 );
+
+ if ( $red > 5 )
+ return false;
+
+ $options = array();
+ $options['redirection'] = 5;
+
+ if ( false == $file_path )
+ $options['method'] = 'HEAD';
+ else
+ $options['method'] = 'GET';
+
+ $response = wp_safe_remote_request( $url, $options );
+
+ if ( is_wp_error( $response ) )
+ return false;
+
+ $headers = wp_remote_retrieve_headers( $response );
+ $headers['response'] = wp_remote_retrieve_response_code( $response );
+
+ // WP_HTTP no longer follows redirects for HEAD requests.
+ if ( 'HEAD' == $options['method'] && in_array($headers['response'], array(301, 302)) && isset( $headers['location'] ) ) {
+ return wp_get_http( $headers['location'], $file_path, ++$red );
+ }
+
+ if ( false == $file_path )
+ return $headers;
+
+ // GET request - write it to the supplied filename
+ $out_fp = fopen($file_path, 'w');
+ if ( !$out_fp )
+ return $headers;
+
+ fwrite( $out_fp, wp_remote_retrieve_body( $response ) );
+ fclose($out_fp);
+ clearstatcache();
+
+ return $headers;
+}
+
+/**
+ * Whether SSL login should be forced.
+ *
+ * @since 2.6.0
+ * @deprecated 4.4.0 Use force_ssl_admin()
+ * @see force_ssl_admin()
+ *
+ * @param string|bool $force Optional Whether to force SSL login. Default null.
+ * @return bool True if forced, false if not forced.
+ */
+function force_ssl_login( $force = null ) {
+ _deprecated_function( __FUNCTION__, '4.4', 'force_ssl_admin()' );
+ return force_ssl_admin( $force );
+}
+
+/**
+ * Retrieve path of comment popup template in current or parent template.
+ *
+ * @since 1.5.0
+ * @deprecated 4.5.0
+ *
+ * @return string Full path to comments popup template file.
+ */
+function get_comments_popup_template() {
+ _deprecated_function( __FUNCTION__, '4.5' );
+
+ return '';
+}
+
+/**
+ * Whether the current URL is within the comments popup window.
+ *
+ * @since 1.5.0
+ * @deprecated 4.5.0
+ *
+ * @return bool
+ */
+function is_comments_popup() {
+ _deprecated_function( __FUNCTION__, '4.5' );
+
+ return false;
+}
+
+/**
+ * Display the JS popup script to show a comment.
+ *
+ * @since 0.71
+ * @deprecated 4.5.0
+ */
+function comments_popup_script() {
+ _deprecated_function( __FUNCTION__, '4.5' );
+}
+
+/**
+ * Adds element attributes to open links in new windows.
+ *
+ * @since 0.71
+ * @deprecated 4.5.0
+ *
+ * @param string $text Content to replace links to open in a new window.
+ * @return string Content that has filtered links.
+ */
+function popuplinks( $text ) {
+ _deprecated_function( __FUNCTION__, '4.5' );
+ $text = preg_replace('/<a (.+?)>/i', "<a $1 target='_blank' rel='external'>", $text);
+ return $text;
+}
+
+/**
+ * Returns the base URL of the uploads directory.
+ * Note: this function will be removed in 4.6.
+ *
+ * @ignore
+ * @since 4.4.0
+ * @access private
+ * @deprecated 4.5.0 Use wp_get_upload_dir()
+ * @see wp_get_upload_dir()
+ *
+ * @return string The base URL.
+ */
+function _wp_upload_dir_baseurl() {
+ _deprecated_function( __FUNCTION__, '4.5', 'wp_get_upload_dir()' );
+ $upload_dir = wp_get_upload_dir();
+ return $upload_dir['baseurl'];
+}