这是前段时间,配置公司网站时解决的一个问题,现翻阅之前的笔记,给需要这个功能的大家。
有道云笔记:创建时间:2014-09-20 16:07
经过几天的代码分析,逐渐找到需要添加水印的地方,最终只添加了几行代码。
直接主题:
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'];
$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 中分类信息的整个解析过程,所以这次根据论坛附件图片中添加水印的方法,一步一步的定位到需要添加水印的位置。