使用Wordpress中的黑白图像在重新生成的缩略图上创建图像大小

时间:2019-03-07 14:25:13

标签: php wordpress image

寻找一种方法来重新生成我所有的特色图像,并在B&W中创建新的图像大小,

我知道这可以在CSS中完成,但是我需要将此图像与REST一起拉到JS canvas应用程序中,并且不能使用CSS,

我找到了这段代码,但是对于我来说似乎不起作用, 它在某些页面上可以上传图片,但是在我将图片上传到帖子时不起作用,我也想知道是否可以通过重新生成网站上的所有缩略图而不是上传来实现此目的。

add_action('after_setup_theme','themename_bw_size');
function themename_bw_size() {
    add_image_size('themename-bw-image', 100, 100, true);
}

add_filter('wp_generate_attachment_metadata','themename_bw_filter');
function themename_bw_filter($meta) {
    $file = wp_upload_dir();
    $file = trailingslashit($file['path']).$meta['sizes']['themename-bw-image']['file'];
    list($orig_w, $orig_h, $orig_type) = @getimagesize($file);
    $image = wp_load_image($file);
    imagefilter($image, IMG_FILTER_GRAYSCALE);
    switch ($orig_type) {
        case IMAGETYPE_GIF:
            imagegif( $image, $file );
            break;
        case IMAGETYPE_PNG:
            imagepng( $image, $file );
            break;
        case IMAGETYPE_JPEG:
            imagejpeg( $image, $file );
            break;
    }
    return $meta;
}

谢谢!

0 个答案:

没有答案