Formatting: Avoid a PHP 7.2 warning in `wp_kses_attr()` when one of `$allowedtags` elements is an uncountable value.
Props andrei0x309, soulseekah, SergeyBiryukov. Fixes #43312. git-svn-id: https://develop.svn.wordpress.org/trunk@42860 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
parent
4902da091c
commit
db606c9bb2
|
@ -1047,7 +1047,8 @@ function wp_kses_attr( $element, $attr, $allowed_html, $allowed_protocols ) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Are any attributes allowed at all for this element?
|
// Are any attributes allowed at all for this element?
|
||||||
if ( ! isset( $allowed_html[ strtolower( $element ) ] ) || true === $allowed_html[ strtolower( $element ) ] || count( $allowed_html[ strtolower( $element ) ] ) == 0 ) {
|
$element_low = strtolower( $element );
|
||||||
|
if ( empty( $allowed_html[ $element_low ] ) || true === $allowed_html[ $element_low ] ) {
|
||||||
return "<$element$xhtml_slash>";
|
return "<$element$xhtml_slash>";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -722,4 +722,14 @@ EOF;
|
||||||
|
|
||||||
$this->assertEquals( "<{$element} title=\"foo\">", wp_kses_attr( $element, $attribute, array( 'foo' => array( 'title' => true ) ), array() ) );
|
$this->assertEquals( "<{$element} title=\"foo\">", wp_kses_attr( $element, $attribute, array( 'foo' => array( 'title' => true ) ), array() ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @ticket 43312
|
||||||
|
*/
|
||||||
|
function test_wp_kses_attr_no_attributes_allowed_with_false() {
|
||||||
|
$element = 'foo';
|
||||||
|
$attribute = 'title="foo" class="bar"';
|
||||||
|
|
||||||
|
$this->assertEquals( "<{$element}>", wp_kses_attr( $element, $attribute, array( 'foo' => false ), array() ) );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue