目录
Toggle继续分享wordpress建站教程。悦然wordpress建站一直建议网站不要上传太大的图片,如果你的网站只是你自己在管理,那么管好自己就可以了,可如果你的网站还有其他用户可以上传图片,那么其他用户在上传图片时可能并不会按照要求上传,所以我们可以对其他用户进行一些限制。
悦然wordpress建站找到如下两段代码,可以分别限制图片上传的像素尺寸和大小。
add_action( 'admin_init', 'zm_wp_limit_image_upload_size' );
function zm_wp_limit_image_upload_size() {
// 排除管理员
if( ! current_user_can( 'administrator' ) )
add_filter( 'wp_handle_upload_prefilter', 'zm_limit_image_upload_size' );
}
function zm_limit_image_upload_size( $file ) {
// Mime type with dimensions, check to exit earlier
$mimes = array( 'image/jpeg', 'image/png', 'image/gif' );
if( !in_array( $file['type'], $mimes ) )
return $file;
$img = getimagesize( $file['tmp_name'] );
$maximum = array( 'width' => 500, 'height' => 700 );
if ( $img[0] > $maximum['width'] )
$file['error'] = '图片太大。 最大宽度为 ' . $maximum['width'] . 'px. 上传的图片宽度为 ' . $img[0] . 'px';
elseif ( $img[1] > $maximum['height'] )
$file['error'] = '图片太大。 最大高度为' . $maximum['height'] . 'px. 上传的图片高度为' . $img[1] . 'px';
return $file;
}
function zm_limit_image_size($file) {
// 以 KB 计算图片大小
$image_size = $file['size']/1024;
// 限制文件大小以 KB 为单位
$limit = 200;
// 检查它是否是图像
$is_image = strpos($file['type'], 'image');
if ( ( $image_size > $limit ) && ($is_image !== false) )
$file['error'] = '你的图片太大了。 必须小于 '. $limit .'KB';
return $file;
}
add_filter('wp_handle_upload_prefilter', 'zm_limit_image_size');
把上面的代码添加添加到当前wordpress建站主题的functions.php文件中即可,也可以添加到wpcode或Code Snippets插件中。
© Copyright 2024. 悦然网络工作室/悦然wordpress建站 专注中小企业wordpress建站 All Rights Reserved.网站地图
本站图片来源为Pexels、Pixabay、Freepik、Unsplash等图片库的免费许可,CC0协议;还有部分为自己手绘,版权碰瓷请自重!法律服务:law@yueranseo.com 蜀ICP备20016391号-1 川公网安备 51011502000367号
微信联系