建站教程

建站教程

Products

当前位置:首页 > 建站教程 >

禁止 WordPress 媒体库上传图片自动生成多个规格尺寸(修改WordPress上传文件大小限制)

GG网络技术分享 2025-03-18 16:13 0


禁止 WordPress 媒体库上传图片自动生成多个规格尺寸

众所周知,在以前版本的 wordpress 里,上传到媒体库的图片默认都会按照缩略图/中等大小/大尺寸这三个等级自动生成对应的不同尺寸图片,用来给不同的地方调用。

这个功能初衷实际是好的,方便菜鸟用户,毕竟这类用户完全不懂图片缩放和压缩体积等技巧,此功能可以避免出现在页面出现体积巨大的原图,影响页面加载时间。

但对于像习惯在本地将图片调整到合适的规格大小的用户来说,页面都是只要显示原图就行了,这功能完全没有用处,反而额外生成的图片还浪费了云盘空间,因此这功能都是直接关闭,也就是把数值全都设定为零。

而在目前新版的 wordpress 程序里(从 5.3 开始),又有了不同情况,程序会对上传的图片尺寸进行额外检测,再自动生成 1536 宽度的 2x 中大尺寸(2x Medium Large),2048 宽度的 2x 大尺寸(2x Large),2560 宽度的缩放(Scaled)这三种新规格的图片,加上默认的几种缩略图规格,也就是极端情况下, 上传一张图片,会额外生成 7 张图片。

如果用的主题还有其它额外参数的话,甚至还会生成更多不同规格版本。一张图生成那么多版本实在是没必要,今天来说一下如何彻底关闭此功能,让它不要生成任何额外版本的图片。

首先常规的就是 wordpress 主程序的设置——媒体里,把三个规格的宽度和高度数值全部改为零。

然后在主题的 function.php 里添加以下内容:

// 禁用自动生成的图片尺寸

function shapeSpace_disable_image_sizes($sizes) {

unset($sizes['thumbnail']); // disable thumbnail size

unset($sizes['medium']); // disable medium size

unset($sizes['large']); // disable large size

unset($sizes['medium_large']); // disable medium-large size

unset($sizes['1536x1536']); // disable 2x medium-large size

unset($sizes['2048x2048']); // disable 2x large size return $sizes;

}

add_action('intermediate_image_sizes_advanced', 'shapeSpace_disable_image_sizes');

// 禁用缩放尺寸

add_filter('big_image_size_threshold', '__return_false');

// 禁用其他图片尺寸

function shapeSpace_disable_other_image_sizes() {

remove_image_size('post-thumbnail'); // disable images added via set_post_thumbnail_size() remove_image_size('another-size'); // disable any other added image sizes

}

add_action('init', 'shapeSpace_disable_other_image_sizes');

保存即可,然后上传的图片就不会再生成任何额外版本了,不管什么地方插入图片,调用的都是原图。

https://www.jiancai315.com/n/46394.html

修改WordPress上传文件大小限制

很多网友会遇到这样一个问题,就是WordPress网站上传图片、附件、多媒体文件时有一个最大文件大小限制,有的甚至只有2M,对与平时上传个图片这个限制还没问题,但是如果要上传个附件或视频等,那就麻烦了,会提示你上传文件超出大小限制。在这种情况下我们可以尝试用下面的方法来修改一下WordPress上传文件大小的限制。

方法一:

在functions.php中添加如下代码,这样上传限制就是64M

@ini_set( \'upload_max_size\' , \'64M\' );@ini_set( \'post_max_size\', \'64M\');@ini_set( \'max_execution_time\', \'300\' );

方法二:

新建一个php.ini文件,在你的主机空间的根目录新建一个php.ini文件,里面使用如下代码。

upload_max_filesize = 64Mpost_max_size = 64Mmax_execution_time = 300

方法三:

在网站根目录的 .htaccess 文件中添加如下代码。

php_value upload_max_filesize 64Mphp_value post_max_size 64Mphp_value max_execution_time 300php_value max_input_time 300

其中方法一我试过很多次,没成功,不知道是我的主机的问题还是其他什么问题,方法二我用了,好用,不过这需要你的服务器支持。方法三好像之前用过可以用,大家自己测试一下吧。网上基本也就这三种方法,其他的还没发现

标签:

提交需求或反馈

Demand feedback