我正在尝试从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的问题。
答案 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');