WordPress.org

Make WordPress Core

Ticket #5678: 5678.r6633.diff

File 5678.r6633.diff, 1.4 KB (added by hansengel, 6 years ago)

An even-newer patch—simplifies strip_html_newlines()

  • wp-includes/formatting.php

     
    12611261        return $matches[0]; 
    12621262} 
    12631263 
     1264/** 
     1265 * strip_html_newlines() - Strip unnecessary newlines from HTML code 
     1266 * 
     1267 * This function removes any unnecessary newlines in HTML 
     1268 * code. Useful for cleaning up RSS feeds before import. 
     1269 * 
     1270 * @since 2.5 
     1271 * 
     1272 * @param string $text The HTML code to strip newlines from 
     1273 * @return string $text with newlines stripped 
     1274 */ 
     1275function strip_html_newlines($text) { 
     1276        $textarr = preg_split("/(<[^>]+>)/Us", $text, -1, PREG_SPLIT_DELIM_CAPTURE); 
     1277        for ($ci = 0; $ci < count($textarr); $ci++) { 
     1278                $curl = $textarr[$ci]; 
     1279                if (isset($curl{0}) && '<' != $curl{0}) { // If it's not a tag 
     1280                        $curl = preg_replace('/[\n\r]+/', ' ', $curl); 
     1281                } 
     1282                $output .= $curl; 
     1283        } 
     1284        return $output; 
     1285} 
     1286 
    12641287?> 
  • wp-admin/import/rss.php

     
    9090                        $post_content = preg_replace('|<(/?[A-Z]+)|e', "'<' . strtolower('$1')", $post_content); 
    9191                        $post_content = str_replace('<br>', '<br />', $post_content); 
    9292                        $post_content = str_replace('<hr>', '<hr />', $post_content); 
     93                        $post_content = strip_html_newlines($post_content); 
    9394 
    9495                        $post_author = 1; 
    9596                        $post_status = 'publish';