如何在上传过程中修改图片

时间:2015-12-27 作者:Clément

我正在开发一个插件,每次用户上传媒体库中的图像时,我都想修改这个图像的元数据。我尝试过使用挂钩“wp\\u handle\\u upload\\u prefilter”,但这种方法似乎不起作用。

2 个回复
SO网友:Prasad Nevase

您需要使用attachment_fields_to_save 滤器在codex上有一个很好的例子。因此,我不想在这里复制它,而是想把你指向法典页面。请take a look here. 我希望这有帮助。

SO网友:jgraup

使用added_post_metaupdate_post_meta 使用$post_id. 有关扩展属性,请参见postthis 获取更多图像功能。

add_action(\'added_post_meta\', \'wpse_20151218_after_post_meta\', 10, 4);

function wpse_20151218_after_post_meta($meta_id, $post_id, $meta_key, $meta_value) {

    if($meta_key === \'_wp_attachment_metadata\') {

        // Add Custom Field
        update_post_meta($post_id, \'_example_meta_key\', \'1234567\');

        $attachment_meta = get_post_meta($post_id);
    }
}

相关推荐

Extra "uploads" added in path

虽然这与高级自定义字段相关,但此函数使用所有本机WP特性,因此我认为在这里询问这一点是合适的。路径中的额外“/上传/”来自何处?在后端,我看到了上传文件的正确链接(domain.com/wp-content/member-files/name.pdf),但在前端,URL在路径(domain.com/wp-content/uploads/member-files/name.pdf)中显示了额外的“/uploads/”,当然为文件生成了404。// file upload to custom location