wordpress会自动生成大量不需要的< p>< / p>标记每个地方.甚至img标签也包含这些< p>标签.因此,它会在网站中创建不需要的空白区域.我尝试了很多方法来删除这些标签: –
preg_replace(array('<p>','</p>'),array('',''),the_content(),1); remove_filter( 'the_content','wpautop' ); preg_replace('/<p>\s*(<a .*>)?\s*(<img .* \/>)\s*(<\/a>)?\s*<\/p>/iU','\1\2\3',$content)
wordpress Visual Editor本身为新行创建了这些标记.
您可以尝试从the_excerpt或the_content中删除过滤器wpautop
remove_filter( 'the_content','wpautop' ); // OR remove_filter( 'the_excerpt','wpautop' );
有时它不起作用(过去不适合我.不是PHP).
您可以尝试使用Javascript / jQuery,在加载DOM之后或关闭之前放置此代码< / body>标签.
jQuery('p:empty').remove();
将删除所有空的< p>< / p>来自整个文档的元素.