关于Discuz X3.4头像尺寸限制的问题,可通过以下三种方式进行调整:
一、核心配置修改方案
1. 修改头像处理类参数
找到文件:/source/class/class_avatar.php
定位第75行附近参数:
原参数:
const MAX_WIDTH = 200; // 最大宽度
const MAX_HEIGHT = 250; // 最大高度
调整为:
const MAX_WIDTH = 300;
const MAX_HEIGHT = 300;
2. 调整JS裁剪参数
修改文件:/static/js/uploadavatar.js
查找以下代码段:
"zoomMin"=>0.55,
"zoomMax"=>1.5,
"zoom"=>1,
调整为:
"zoomMin"=>0.35,
"zoomMax"=>2,
"zoom"=>1,
二、数据库直调方案
执行SQL语句:
UPDATE pre_common_setting SET svalue = 'a:3:{s:5:"width";s:3:"300";s:6:"height";s:3:"300";s:7:"custom";i:1;}' WHERE skey = 'avatarwhitelist';
三、服务器环境适配
1. 修改PHP配置:
post_max_size = 8M
upload_max_filesize = 5M
memory_limit = 128M
2. 调整GD库参数验证:
在/source/class/class_image.php中增加:
$im = new Image();
$im->setConfig('max_memory', 512);
修改完成后需:
1. 清空data/avatar目录下的缓存文件
2. 更新浏览器缓存(Ctrl+F5强制刷新)
3. 测试上传时建议使用PNG格式图片
4. 若使用CDN需同步刷新缓存规则
注:修改核心文件前建议做好备份,系统升级时需注意参数覆盖问题。对于企业级用户,建议通过开发hook插件实现参数动态配置,避免直接修改系统文件。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。 |