WordPress blockquote removes “ tag

So I have a quote in my page template and I would like to give the user the opportunity to add line breaks whenever they desire to do so.

I wanted the blockquote to have an extra <p> tag inside the <blockquote> tag so I could style it better.

The problem I’m having now is that the <br /> tags are being removed. While using the wpautop() function they should stay.

Here is what I did:

$matched = preg_match("~(?<=<blockquote>)([\s\S]+?)(?=</blockquote>)~",
wpautop($child->post_content), $found); // find the quote in the content with regEx

$found = current($found);
$replace   = "<blockquote><p>".$found."</p></blockquote>";// add the <p> tag
$newphrase = str_replace($found, $replace, $found);

$clearQuote = preg_replace("~<blockquote>([\s\S]+?)</blockquote>~", '', 
wpautop($child->post_content, true)); // use wpautop to keep the <p> tag

Can anyone see why the <br> tag is being removed or do I need to add something else?

I came to realize that I don’t think it has something to do with the wpautop() function.

The variable I use it in is used to filter it out of the_content().
So $clearQuote uses the found quote and deletes it from the_content() where $quoteFound uses the found value and doesn’t use wpautop().
So it must be something else.

I added the wpautop() function to the $matched variable so it would add a <p> tag to where the user break the line. This way there isn’t really a line break but the output is the same.

0

Leave a Comment