如何自动生成自定义图像大小

时间:2010-11-11 20:20:41

标签: image wordpress filter

当我为attachment_fields_to_save添加过滤器时出现了奇怪的行为,当我保存图像时,它不想保存图像元数据,如标题,描述和标题。

为什么我需要添加此过滤器?因为我使用此代码有很多自定义尺寸:

add_image_size("imagesize-940x360", 940, 360, true);

图像可能无法正确放置,因此用户需要使用Wordpress强大的工具来编辑图像,如裁剪和缩放。

由于某些愚蠢的原因(或者这可能是错误),Wordpress不会为自定义图像大小生成图像。

为了实现自定义尺寸的生成,我需要在用户按下Wordpress图像编辑器中的保存按钮时添加过滤器。这是我一直在使用的片段代码:

add_filter("attachment_fields_to_save", "rl_regenerate_image", 99, 2);
function rl_regenerate_image($post, $attachment)
{
    $id = $post['ID'];

    $fullsizepath = get_attached_file($id);
    wp_update_attachment_metadata($id, wp_generate_attachment_metadata($id, $fullsizepath));

    return true;
}

上面的代码会在用户正确编辑图像时生成自定义尺寸,但遗憾的是它不会保存所有更新的元数据图像,如标题,标题和说明。

你们知道如何解决这个问题吗?所以我想要实现的是如何为自定义大小生成“已编辑”的图像并正确保存元数据。

提前致谢!

1 个答案:

答案 0 :(得分:2)

如果还没有解决,或者任何Google员工都在那里..这是一个名为Post Thumbnail Editor的插件,可以让你编辑各个自定义图像尺寸。效果很好。

http://wordpress.org/extend/plugins/post-thumbnail-editor/