+
+/**
+ * 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.0' );
+ return '';
+}
+
+/**
+ * Formats text for the rich text editor.
+ *
+ * The {@see 'richedit_pre'} filter 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.0', 'format_for_editor()' );
+
+ if ( empty( $text ) ) {
+ /**
+ * Filters 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
+ * {@see '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.0', 'format_for_editor()' );
+
+ if ( !empty($output) )
+ $output = htmlspecialchars($output, ENT_NOQUOTES, get_option( 'blog_charset' ) ); // convert only < > &
+
+ /**
+ * Filters 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.0', '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.0', '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.0', '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.0' );
+
+ 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.0' );
+
+ 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.0' );
+}
+
+/**
+ * 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.0' );
+ $text = preg_replace('/<a (.+?)>/i', "<a $1 target='_blank' rel='external'>", $text);
+ return $text;
+}
+
+/**
+ * The Google Video embed handler callback.
+ *
+ * Deprecated function that previously assisted in turning Google Video URLs
+ * into embeds but that service has since been shut down.
+ *
+ * @since 2.9.0
+ * @deprecated 4.6.0
+ *
+ * @return string An empty string.
+ */
+function wp_embed_handler_googlevideo( $matches, $attr, $url, $rawattr ) {
+ _deprecated_function( __FUNCTION__, '4.6.0' );
+
+ return '';
+}
+
+/**
+ * Retrieve path of paged template in current or parent template.
+ *
+ * @since 1.5.0
+ * @deprecated 4.7.0 The paged.php template is no longer part of the theme template hierarchy.
+ *
+ * @return string Full path to paged template file.
+ */
+function get_paged_template() {
+ _deprecated_function( __FUNCTION__, '4.7.0' );
+
+ return get_query_template( 'paged' );
+}
+
+/**
+ * Removes the HTML JavaScript entities found in early versions of Netscape 4.
+ *
+ * Previously, this function was pulled in from the original
+ * import of kses and removed a specific vulnerability only
+ * existent in early version of Netscape 4. However, this
+ * vulnerability never affected any other browsers and can
+ * be considered safe for the modern web.
+ *
+ * The regular expression which sanitized this vulnerability
+ * has been removed in consideration of the performance and
+ * energy demands it placed, now merely passing through its
+ * input to the return.
+ *
+ * @since 1.0.0
+ * @deprecated deprecated since 4.7
+ *
+ * @param string $string
+ * @return string
+ */
+function wp_kses_js_entities( $string ) {
+ _deprecated_function( __FUNCTION__, '4.7.0' );
+
+ return preg_replace( '%&\s*\{[^}]*(\}\s*;?|$)%', '', $string );
+}
+
+/**
+ * Sort categories by ID.
+ *
+ * Used by usort() as a callback, should not be used directly. Can actually be
+ * used to sort any term object.
+ *
+ * @since 2.3.0
+ * @deprecated 4.7.0 Use wp_list_sort()
+ * @access private
+ *
+ * @param object $a
+ * @param object $b
+ * @return int
+ */
+function _usort_terms_by_ID( $a, $b ) {
+ _deprecated_function( __FUNCTION__, '4.7.0', 'wp_list_sort' );
+
+ if ( $a->term_id > $b->term_id )
+ return 1;
+ elseif ( $a->term_id < $b->term_id )
+ return -1;
+ else
+ return 0;
+}
+
+/**
+ * Sort categories by name.
+ *
+ * Used by usort() as a callback, should not be used directly. Can actually be
+ * used to sort any term object.
+ *
+ * @since 2.3.0
+ * @deprecated 4.7.0 Use wp_list_sort()
+ * @access private
+ *
+ * @param object $a
+ * @param object $b
+ * @return int
+ */
+function _usort_terms_by_name( $a, $b ) {
+ _deprecated_function( __FUNCTION__, '4.7.0', 'wp_list_sort' );
+
+ return strcmp( $a->name, $b->name );
+}
+
+/**
+ * Sort menu items by the desired key.
+ *
+ * @since 3.0.0
+ * @deprecated 4.7.0 Use wp_list_sort()
+ * @access private
+ *
+ * @global string $_menu_item_sort_prop
+ *
+ * @param object $a The first object to compare
+ * @param object $b The second object to compare
+ * @return int -1, 0, or 1 if $a is considered to be respectively less than, equal to, or greater than $b.
+ */
+function _sort_nav_menu_items( $a, $b ) {
+ global $_menu_item_sort_prop;
+
+ _deprecated_function( __FUNCTION__, '4.7.0', 'wp_list_sort' );
+
+ if ( empty( $_menu_item_sort_prop ) )
+ return 0;
+
+ if ( ! isset( $a->$_menu_item_sort_prop ) || ! isset( $b->$_menu_item_sort_prop ) )
+ return 0;
+
+ $_a = (int) $a->$_menu_item_sort_prop;
+ $_b = (int) $b->$_menu_item_sort_prop;
+
+ if ( $a->$_menu_item_sort_prop == $b->$_menu_item_sort_prop )
+ return 0;
+ elseif ( $_a == $a->$_menu_item_sort_prop && $_b == $b->$_menu_item_sort_prop )
+ return $_a < $_b ? -1 : 1;
+ else
+ return strcmp( $a->$_menu_item_sort_prop, $b->$_menu_item_sort_prop );
+}