分类信息上传的图片添加添加水印而附件不添加水印
如题所述:如何实现分类信息上传的图片添加水印(统一添加,直接绕过后台的水印是否设置开启)。附件图片不添加水印,这很好办到,直接关闭后台论坛附件图片水印即可,但是实现分类信息图片添加水印比较困难。
根据网上找到的方法:
经过几天的代码分析,逐渐找到需要添加水印的地方,最终只添加了几行代码。
直接主题:
source/class/extend/extend_thread_sort.php
中为extend_thread_sort类,
在其方法public function after_newthread()中
if($_G['forum_optionlist'][$optionid]['type'] == 'image') {
$identifier = $_G['forum_optionlist'][$optionid]['identifier'];
$sortaids[] = intval($_GET['typeoption'][$identifier]['aid']);
require_once libfile('class/image');
$image = new image;
$imgoptiondata = dunserialize($value);
if($_G['setting']['watermarkstatus'] && empty($_G['forum']['disablewatermark'])) {
$image->Watermark($imgoptiondata['url'], '', 'forum');
$update['filesize'] = $image->imginfo['size'];}
红色即为添加的代码
分析过程比较曲折,由于前段时间已经对分类信息相对比较熟悉,知道disucz 中分类信息的整个解析过程,所以这次根据论坛附件图片中添加水印的方法,一步一步的定位到需要添加水印的位置。
————————————————
版权声明:本文为CSDN博主「richerg85」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/richerg85/article/details/41543429
亲身体验后发现根本无法实现,我也直接去除水印开启判断,注释掉if($_G['setting']['watermarkstatus'] && empty($_G['forum']['disablewatermark'])) ,还是不能生效,有大佬知道是什么原因吗?
if($_G['forum_optionlist'][$optionid]['type'] == 'image') {$identifier = $_G['forum_optionlist'][$optionid]['identifier'];$sortaids[] = intval($_GET['typeoption'][$identifier]['aid']);require_once libfile('class/image');$image = new image;$imgoptiondata = dunserialize($value);$image->Watermark($imgoptiondata['url'], '', 'forum');$update['filesize'] = $image->imginfo['size'];
页:
[1]