mirror of
https://github.com/gosticks/wordpress-develop.git
synced 2026-08-12 12:50:28 +00:00
Fix creating of extra <br /> tags in both PHP and JS variants of wpautop(). Add PHP tests to catch similar problems in the future.
Props valendesigns, azaozz. Fixes #33377. git-svn-id: https://develop.svn.wordpress.org/trunk@33624 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
@@ -491,7 +491,7 @@ function wpautop( $pee, $br = true ) {
|
||||
$pee .= $last_pee;
|
||||
}
|
||||
// Change multiple <br>s into two line breaks, which will turn into paragraphs.
|
||||
$pee = preg_replace('|<br />\s*<br />|', "\n\n", $pee);
|
||||
$pee = preg_replace('|<br\s*/?>\s*<br\s*/?>|', "\n\n", $pee);
|
||||
|
||||
$allblocks = '(?:table|thead|tfoot|caption|col|colgroup|tbody|tr|td|th|div|dl|dd|dt|ul|ol|li|pre|form|map|area|blockquote|address|math|style|p|h[1-6]|hr|fieldset|legend|section|article|aside|hgroup|header|footer|nav|figure|figcaption|details|menu|summary)';
|
||||
|
||||
@@ -574,6 +574,9 @@ function wpautop( $pee, $br = true ) {
|
||||
// Replace newlines that shouldn't be touched with a placeholder.
|
||||
$pee = preg_replace_callback('/<(script|style).*?<\/\\1>/s', '_autop_newline_preservation_helper', $pee);
|
||||
|
||||
// Normalize <br>
|
||||
$pee = str_replace( array( '<br>', '<br/>' ), '<br />', $pee );
|
||||
|
||||
// Replace any new line characters that aren't preceded by a <br /> with a <br />.
|
||||
$pee = preg_replace('|(?<!<br />)\s*\n|', "<br />\n", $pee);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user