禁用自动调整上传图像的大小,但仅针对特定文件名

时间:2021-09-16 作者:Alfredo Saez

我如何在上传图像时完全禁用wordpress自动调整大小,但仅限于文件名中有特定字符串的图像。

例如,在文件名包含字符串“的图像上禁用自动调整大小”;HD";。

image\\u xyz。jpeg>&燃气轮机;已启用自动调整大小功能。jpeg>&燃气轮机;自动调整大小功能已禁用image\\u HD。jpeg>&燃气轮机;自动调整大小功能已禁用

这背后的原因是什么?

我必须在一个特定的插件上以最好的质量处理白色图像,该插件将把图像发送到另一个平台,并且不会在主站点上发布,因此不需要调整大小的版本

以下代码可以工作,但基于文件格式。

function wpdocs_disable_upload_sizes( $sizes, $image_meta ) {
 
    // Get filetype data.
    $filetype = wp_check_filetype( $image_meta[\'file\'] );
     
    $exclude_file_types = array(
        \'image/png\',
    );
 
    // Check if file type is on exclude list 
    if ( in_array( $filetype[\'type\'], $exclude_file_types ) ) {
        $sizes = array();
    }
 
    // Return sizes you want to create from image (None if image is gif.)
    return $sizes;
}   
add_filter( \'intermediate_image_sizes_advanced\', \'wpdocs_disable_upload_sizes\', 10, 2 );

1 个回复
SO网友:Mr SKT

Please Try Below Codes:

add_filter( \'intermediate_image_sizes_advanced\', \'prefix_remove_default_images\' );
function prefix_remove_default_images( $sizes ) {
if (preg_match(\'/(hd)/\', get_attached_file( $attachment_id )) {
 unset( $sizes[\'small\']); // 150px
 unset( $sizes[\'medium\']); // 300px
 unset( $sizes[\'large\']); // 1024px
 unset( $sizes[\'medium_large\']); // 768px
 return $sizes;
}
}
您可以使用Stop Generating Unnecessary Thumbnails WordPress插件可以很容易地禁用所有图像大小。

相关推荐

如何通过函数.php使applyFilters函数返回FALSE

因此,插件中有以下代码:if( window.wp.hooks.applyFilters( \'filtername\', true, $(this) ) ) { //do something } 在不编辑插件文件但使用函数的情况下,如何使上述语句始终为false。改为php?我不确定我是否正确理解applyfilters,但我尝试过:function filtername() { return false; } add_filter( \'fil