Opened 6 years ago
Last modified 6 years ago
#49492 new defect (bug)
wpautop inserted p tags inconsistently alter visual space
| Reported by: |
|
Owned by: | |
|---|---|---|---|
| Milestone: | Awaiting Review | Priority: | normal |
| Severity: | normal | Version: | 5.3.2 |
| Component: | Formatting | Keywords: | |
| Focuses: | Cc: |
Description
I wrote a custom shortcode to insert a <figure></figure> in my posts. wpautop inserts an empty <p></p> before the <figure>.
If I place the shortcode before the first paragraph after a subheading, the inserted <p> increases the visual space between the subheading and the paragraph. But if I place the shortcode before the second paragraph, the extra <p> doesn't affect the visual spacing between paragraphs.
I can work around the inconsistency by changing wpautop's priority. But that scrambles other things on the web site.
remove_filter( 'the_content', 'wpautop' );
add_filter('the_content', 'wpautop', 12);
add_shortcode('hd_product', 'display_product');
function display_product($args){
extract(shortcode_atts(array(
'id' => null,
'cat' => null,
'tag' => null,
'orderby' => 'rand',
'limit' => 1,
), $args));
$product = wc_get_product( $id );
$image = $product->get_image($size = 'product-slider', ["class" => "product-callout-image","alt"=>"mp3 for sale"] );
$term = get_term_by( 'id', $product->category_ids[0], 'product_cat' );
$output = '<figure class="product-callout">';
$output .= '<a href="' . get_permalink($id) . '">' . $image ;
$output .= '<figcaption class="product-callout-caption"><b>' . $term->name . '</b><br>' . '$' . $product->price . '</figcaption>';
$output .= '</a></figure>';
return $output;
}
Change History (1)
Note: See
TracTickets for help on using
tickets.