Address issue where <ul> is converted to an <amp-carousel> #1529
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Thanks to @christianc1 for the detailed report of this in #1528.
Steps To Reproduce
<amp-carousel>
, though it's not a gallery block:Background
AMP_Gallery_Block_Sanitizer iterates through the
<ul>
tags that have child nodes.As @christianc1 mentioned, if this is in Classic mode, the sanitizer will have the argument of
array( 'carousel_required' => true )
.This causes
$is_amp_carousel
to be true, even for something like<ul><li></li></ul>
.Approach
Assuming that the
AMP_Gallery_Block_Sanitizer
is only intended for the Gallery block, restricting it to that block would probably make sense.It looks like the Gallery block should always have the class of
wp-block-gallery
. Its stylesheet only uses that class, and the image selector begins withul.wp-block-gallery
.So this restricts the Gallery block sanitizer to only
ul.wp-block-gallery
, and it simply exits if the class isn't present:Closes #1528.