从WordPress中的对象标签周围删除P标签



我正在寻找一种从WordPress中的对象标签中删除P标签的方法。我已经找到了一种从IMG和IFRAME标签上删除P标签的方法,但想扩展以下代码以包含对象标签。

function filter_ptags_on_images($content) {
  $content = preg_replace('/<p>s*(<a .*>)?s*(<img .* />)s*(</a>)?s*</p>/iU', '123', $content);
  return preg_replace('/<p>s*(<iframe .*>*.</iframe>)s*</p>/iU', '1', $content);
}
add_filter('the_content', 'filter_ptags_on_images');

任何帮助将不胜感激。预先感谢。

您不能仅复制iframe part吗?

function filter_ptags_on_images($content) {
    $content = preg_replace('/<p>s*(<a .*>)?s*(<img .* />)s*(</a>)?s*</p>/iU', '123', $content);
    $content = preg_replace('/<p>s*(<object.*>*.</object>)s*</p>/iU', '1', $content);
    return preg_replace('/<p>s*(<iframe .*>*.</iframe>)s*</p>/iU', '1', $content);
}
add_filter('the_content', 'filter_ptags_on_images');

放入主题的函数.php文件中:

remove_filter ('the_content',  'wpautop');