如何删除ACF所见即所得字段中img和iframe标签周围的p标签

时间:2014-03-05 作者:rkoller

我正在查询高级自定义字段wysiwyg字段。问题是,无论我怎么做,wordpress都会在输出中用p标记包装偶尔出现的IMG和IFrame。停用wpautop worksremove_filter (\'acf_the_content\', \'wpautop\');但如果我尝试使用以下代码段仅排除IMG和IFrame,则会失败:

function filter_ptags_on_images($content)
{
    $content = preg_replace(\'/<p>\\s*(<a .*>)?\\s*(<img .* \\/>)\\s*(<\\/a>)?\\s*<\\/p>/iU\', \'\\1\\2\\3\', $content);
    return preg_replace(\'/<p>\\s*(<iframe .*>*.<\\/iframe>)\\s*<\\/p>/iU\', \'\\1\', $content);
}
add_filter(\'the_content\', \'filter_ptags_on_images\');
有人对如何实现这一目标有什么建议吗?向拉尔夫致意

1 个回复
最合适的回答,由SO网友:rkoller 整理而成

好的,如果你想去掉高级自定义字段的img和iframe的p标签,你必须交换the_content 具有acf_the_content . 代码看起来是这样的:

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

结束

相关推荐

如何使用图片上传的getimageSize()?

我需要通过media box检查要上载的图像的分辨率,然后将其上载到自定义目录。作为起点,我使用了How Can I Organize the Uploads Folder by Slug (or ID, or FileType, or Author)?其中一部分是这样的:function wpse_25894_custom_upload_dir($path) { $use_default_dir = ( isset($_REQUEST[\'post_id\'] )