禁用wordpress5.2自动裁剪图片功能

2022-03-01 15:17:18 浏览数 (1)

如果你用的是wordpress5.2或以上的版本,系统还会根据你上传的图片裁剪成 scaled 后缀的文件,大小为 2560。 还有其他大小如 2048,1536,768..... 严重浪费磁盘空间不说,还占用性能。

解决办法如下:

代码语言:javascript复制
// 禁用缩放尺寸  2560
add_filter('big_image_size_threshold', '__return_false');  
 
//禁用其他尺寸
 
function shapeSpace_disable_medium_large_images($sizes) {
 
unset($sizes['medium_large']); // disable 768px size images
 
unset($sizes['1536x1536']);    // disable 2x medium-large size 
unset($sizes['2048x2048']);    // disable 2x large size return $sizes;
 
return $sizes;
 
}
add_filter('intermediate_image_sizes_advanced', 'shapeSpace_disable_medium_large_images');

这里我们禁用了系统默认的裁剪大小。

以本站 https://4k.wpcoder.cn/ 为例,我需要设置壁纸缩略图,和壁纸预览图,那么就可以在后台自己自定义裁剪大小,不需要可以设置 0

具体使用方法:

我们可以在主循环内使用以下代码

代码语言:javascript复制
if(has_post_thumbnail()) {
                 the_post_thumbnail('thumbnail' ,array('alt'=> trim(strip_tags( $post->post_title )), 'title'=> trim(strip_tags( $post->post_title ))));
            }

或者

代码语言:javascript复制
    <?php
 
    if ( has_post_thumbnail() ) { // check if the post has a Post Thumbnail assigned to it.
 
            $url =  get_the_post_thumbnail_url($post->ID,'large');
            echo '<img class="single-thumbnail" alt="'.get_the_title().'" title="'.get_the_title().'" src="'.$url.'">';
 
        }
    ?>

0 人点赞