Skip to content

Commit 71ca5c6

Browse files
committed
HTML API: Add support for PRE and LISTING elements.
Adds support for the following HTML elements to the HTML Processor: - PRE, LISTING Previously, these elements were not supported and the HTML Processor would bail when encountering them. Now, with this patch applied, it will proceed to parse an HTML document when encountering those tags. Developed in WordPress/wordpress-develop#5903 Props jonsurrell, dmsnell Fixes #60283 Built from https://develop.svn.wordpress.org/trunk@57317 git-svn-id: https://core.svn.wordpress.org/trunk@56823 1a063a9b-81f0-0310-95a4-ce76da25c4cd
1 parent b2edf66 commit 71ca5c6

File tree

2 files changed

+17
-5
lines changed

2 files changed

+17
-5
lines changed

wp-includes/html-api/class-wp-html-processor.php

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@
102102
* - Containers: ADDRESS, BLOCKQUOTE, DETAILS, DIALOG, DIV, FOOTER, HEADER, MAIN, MENU, SPAN, SUMMARY.
103103
* - Custom elements: All custom elements are supported. :)
104104
* - Form elements: BUTTON, DATALIST, FIELDSET, LABEL, LEGEND, METER, PROGRESS, SEARCH.
105-
* - Formatting elements: B, BIG, CODE, EM, FONT, I, SMALL, STRIKE, STRONG, TT, U, WBR.
105+
* - Formatting elements: B, BIG, CODE, EM, FONT, I, PRE, SMALL, STRIKE, STRONG, TT, U, WBR.
106106
* - Heading elements: H1, H2, H3, H4, H5, H6, HGROUP.
107107
* - Links: A.
108108
* - Lists: DD, DL, DT, LI, OL, LI.
@@ -112,7 +112,7 @@
112112
* - Sectioning elements: ARTICLE, ASIDE, HR, NAV, SECTION.
113113
* - Templating elements: SLOT.
114114
* - Text decoration: RUBY.
115-
* - Deprecated elements: ACRONYM, BLINK, CENTER, DIR, ISINDEX, KEYGEN, MULTICOL, NEXTID, SPACER.
115+
* - Deprecated elements: ACRONYM, BLINK, CENTER, DIR, ISINDEX, KEYGEN, LISTING, MULTICOL, NEXTID, SPACER.
116116
*
117117
* ### Supported markup
118118
*
@@ -684,10 +684,12 @@ private function step_in_body() {
684684
case '-FOOTER':
685685
case '-HEADER':
686686
case '-HGROUP':
687+
case '-LISTING':
687688
case '-MAIN':
688689
case '-MENU':
689690
case '-NAV':
690691
case '-OL':
692+
case '-PRE':
691693
case '-SEARCH':
692694
case '-SECTION':
693695
case '-SUMMARY':
@@ -732,6 +734,18 @@ private function step_in_body() {
732734
$this->insert_html_element( $this->state->current_token );
733735
return true;
734736

737+
/*
738+
* > A start tag whose tag name is one of: "pre", "listing"
739+
*/
740+
case '+PRE':
741+
case '+LISTING':
742+
if ( $this->state->stack_of_open_elements->has_p_in_button_scope() ) {
743+
$this->close_a_p_element();
744+
}
745+
$this->insert_html_element( $this->state->current_token );
746+
$this->state->frameset_ok = false;
747+
return true;
748+
735749
/*
736750
* > An end tag whose tag name is one of: "h1", "h2", "h3", "h4", "h5", "h6"
737751
*/
@@ -1007,7 +1021,6 @@ private function step_in_body() {
10071021
case 'INPUT':
10081022
case 'LI':
10091023
case 'LINK':
1010-
case 'LISTING':
10111024
case 'MARQUEE':
10121025
case 'MATH':
10131026
case 'META':
@@ -1021,7 +1034,6 @@ private function step_in_body() {
10211034
case 'OPTION':
10221035
case 'PARAM':
10231036
case 'PLAINTEXT':
1024-
case 'PRE':
10251037
case 'RB':
10261038
case 'RP':
10271039
case 'RT':

wp-includes/version.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
*
1717
* @global string $wp_version
1818
*/
19-
$wp_version = '6.5-alpha-57316';
19+
$wp_version = '6.5-alpha-57317';
2020

2121
/**
2222
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.

0 commit comments

Comments
 (0)