如何从wordpress中删除p标签

时间:2015-05-14 08:52:15

标签: php wordpress

我正在尝试从wordpress中删除p标签,自动在图像中添加p标签。我也用wordpress将图像居中,所以它变成这样的东西

所以我尝试添加此代码

function filter_ptags_on_images($content){
return preg_replace('/<p style=".*?">\s*(<a .*>)?\s*(<img .* \/>)\s*(<\/a>)?\s*<\/p>/iU',           '\1\2\3', $content);
}

add_filter('the_content', 'filter_ptags_on_images');

这会从p标签中删除样式,它会变成这样的

<p><img src=...><p>

任何人都可以帮我解决如何从图像中删除p的问题。

2 个答案:

答案 0 :(得分:2)

尝试以下代码:

function filter_ptags_on_images($content)
{    
    return preg_replace('/<p>(\s*)(<img .* \/>)(\s*)<\/p>/iU', '\2', $content);
}
add_filter('the_content', 'filter_ptags_on_images');

或者尝试修改自己的代码:

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

答案 1 :(得分:1)

使用此hack你已经从你的内容中删除了P标签,请使用此hack并在完成此项工作后告诉我。

remove_filter ('the_content',  'wpautop');
remove_filter ('comment_text', 'wpautop');