动态修改帖子上图像的属性

时间:2017-01-27 作者:Paolo

使用过滤器wp_get_attachment_image_attributes 例如,我可以向图像附件添加属性:

function my_filter( $attr, $attachment, $size )
{
    $attr[\'data-custom\'] = \'hello\';

    return $attr;
}
add_filter( \'wp_get_attachment_image_attributes\', \'my_filter\', 10, 3 );
但是,此筛选器not 影响imgs在岗位上。

我已经设法做到了image_send_to_editor 过滤,但这样属性就会“硬编码”到帖子的源代码中,所以我对这种方法不满意。

是否有添加/编辑的方法posts 图像的属性作为img是否将呈现到页面源中?

换句话说,有没有办法扩展wp_get_attachment_image_attributes 到帖子中的图像?

1 个回复
SO网友:Paolo

没有这样的过滤器可以直接做到这一点。

唯一的方法是拦截帖子的内容并进行修改:

add_filter( \'the_content\', \'FilterImages\', 0 );
function FilterImages( $content )
{
    // parse $content looking for <img .... />
    // modify $content if it needs to be modified

    return $content;
}
通过一些字符串操作,我成功地完成了我需要做的事情。

我想也是DOMElement 如果内容操作任务不平凡,则可以使用。

相关推荐

为内置钩子调用do_action和Apply_Filters是否安全?

我正在开发一个插件,它需要复制一些内置的WordPress逻辑。(此逻辑不能用任何内置方法调用,也不能独立连接到。)在这个动作序列中,WordPress的正常行为是调用动作挂钩(do_action(\'wp_login\', ...)) 和过滤器挂钩(apply_filters(\'login_redirect\', ...)).如果在对应于在Core中调用它们的时间点调用它们,那么直接从我的插件调用这些内置钩子是否安全(并且是可以接受的做法)?或者,其他与此相关的开发人员期望在非常特定的时间执行操作的风