Phpcms v9默认ckeditor编辑器上传图片增加附件大小判断的方法

最近碰到的一个问题:客户在添加文章内容后不能正常更新首页HTML、管理后台一更新就出现空白,检查得出:当图片附件的大小大过5M(或者更大值),Phpcms模板中用到thumb()缩略图裁剪函数时,会造成服务器卡住不能生成HTML静态文件,今天CMSYOU在这里与大家分享Phpcms v9默认ckeditor编辑器上传图片增加附件大小判断的方法,从来避免因缩略图太大而导致缩略图裁剪失败的情况。

出现上述问题的主要原因是:Phpcms v9默认ckeditor编辑器上传图片默认没有做附件大小的判断,这也算是Phpcms v9的一个硬性Bug。Phpcms模板中用到thumb()函数裁剪缩略图时,当服务器内存不足以处理这一工作时,就会中断抛锚,而这一过程并不会产生错误日志,于是检查这一问题都比较困难,要找到出题点这还得益于CMSYOU团队技术对于Phpcms的熟悉和项目经验。

具体怎么修改Phpcms v9程序,让ckeditor编辑器上传图片时增加附件大小判断呢?下面来具体来说修改方法:

顺着藤找到根:前台调用的from上传地址是index.php?m=attachment&c=attachments&a=upload&module=****,可见是attachment模块、attachment文件的upload方法,于是找到phpcms/modules/attachment/attachments.php文件中的upload方法研究,发现跟attachments类有关,具体修改:

1、修改phpcms/libs/classes/attachment.class.php第49行,增加下面几行代码,获取系统设置的附件上传大小限制参数maxsize:

Phpcms v9默认ckeditor编辑器上传图片增加附件大小判断的方法

2、修改phpcms/modules/attachment/attachments.php文件,在第47行增加下面几行判断:

Phpcms v9编辑器ckeditor上传图片大小判断

提示:修改前先备份好原有程序,碰到修改错误还可以用备份恢复。

© 版权声明
THE END
喜欢就支持一下吧
点赞10 分享