morgan use the_content
filter hook with regex to remove the <p> tags around the particular tag. Take a look to the below codes.
function wp97345_remove_ptags( $content ) {
$content = preg_replace('/<p>\s*(<img .* \/>)\s*<\/p>/iU', '\1', $content);
$content = preg_replace('/<p>\s*(<iframe.*>*.<\/iframe>)\s*<\/p>/iU', '\1', $content);
return $content;
}
add_filter( 'the_content', 'wp97345_remove_ptags' );
I hope this will help.