腾讯云网站解决方案帮您轻松应对建站成本高/网络不稳等常见问题

discuz! 分类信息中图片加水印方法

2
回复
1262
查看
[复制链接]

765

主题

779

帖子

3万

积分

董事

Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72

积分
33025
发表于 19-3-20 19:46:28 | 显示全部楼层 |阅读模式      紫钻仅向指定用户开放  
这是前段时间,配置公司网站时解决的一个问题,现做一个记录,顺便给需要这个功能的大家。* I5 M) I# ?, h/ N' J% e6 Z6 k

  V. q6 N6 i% k" q# O$ f$ j. {经过几天的代码分析,逐渐找到需要添加水印的地方,最终只添加了几行代码。
! v6 {  ~: f7 t& @- T* l& L. v$ `# t/ H7 I; h
直接上教程:
. D) [& p1 l( k8 E6 U首先打开! l( q! T8 I' y3 Q4 r3 b
  1. source/class/extend/extend_thread_sort.php
复制代码
此为extend_thread_sort类,& G5 V8 ?2 f! e
在其方法的public function after_newthread()中. {" k% U. U2 x( P! B

, s) }- X3 k  n* t找到此段代码(注意有两处  我们需要找到第二处(全词匹配搜索 aid ))
! o- @' |* ~. g2 h3 H
  1. if($_G['forum_optionlist'][$optionid]['type'] == 'image') {
    2 _" U4 L, F' z# g' H( y9 ]7 \
  2. $identifier = $_G['forum_optionlist'][$optionid]['identifier'];
    6 `- U2 L9 S( {. h4 U1 @! L
  3. $sortaids[] = intval($_GET['typeoption'][$identifier]['aid']);
复制代码
701255c92277603f1f.png " S0 `- b! e* n( d. N8 n; ^
将此处到吗替换成3 u/ _6 O& o' V: s
  1. if($_G['forum_optionlist'][$optionid]['type'] == 'image') {
    ; j2 H. ~% N& t- ?  T- S! v: N2 c) N
  2.                                                 $identifier = $_G['forum_optionlist'][$optionid]['identifier'];8 ]' [" T" O4 E
  3.                                                 $sortaids[] = intval($_GET['typeoption'][$identifier]['aid']);
    1 ?8 ~4 V9 C4 O& l
  4.                                         require_once libfile('class/image');! u9 X% b. B* P3 e- V, Q) d
  5.                                                 $image = new image;7 ~  P: K$ k2 {0 [: N6 K1 V
  6.                                                 $imgoptiondata = dunserialize($value);
    - L# D* R5 P+ v5 J* V
  7.                                         if($_G['setting']['watermarkstatus'] && empty($_G['forum']['disablewatermark'])) {
    + {8 B: K$ U  |2 [
  8.                                                 $image->Watermark($imgoptiondata['url'], '', 'forum');
    : z+ N/ s4 \0 t- l
  9.                                                 $update['filesize'] = $image->imginfo['size'];0 l6 U2 s# i3 r
  10.                         }
复制代码
替换后的效果图+ Y+ G$ d8 ?% V8 F
962795c92273c4f3bb.png ( N- K5 U# J% G# E' w2 g

# V3 q: N4 v! R替换以上代码后,更新缓存做测试。9 _0 F. r! T; L; W3 L1 U$ C
分析过程比较曲折,由于前段时间已经对分类信息相对比较熟悉,知道disucz 中分类信息的整个解析过程,所以这次根据论坛附件图片中添加水印的方法,一步一步的定位到需要添加水印的位置。) p1 Y; v+ f/ l
到此代码结束!- f. r& K# _+ W5 M" z
2 k+ \/ R8 x2 D2 j4 g9 t, b( N

0

主题

10

帖子

20

积分

1°伸手党

Rank: 2

积分
20
发表于 19-9-19 16:21:30 | 显示全部楼层         
路过,学习下
回复

使用道具 举报

0

主题

10

帖子

4

积分

1°伸手党

Rank: 2

积分
4
发表于 19-10-29 02:18:50 | 显示全部楼层         
不知该说些什么。。。。。。就是谢谢
回复

使用道具 举报

网站简介

球球发,是一家 Discuz! 商业插件、风格模板、网站源码、 Discuz!运营维护技术等于一体的交流分享网站,全站95%的资源都是免费下载,对于资源我们是每天更新,每个亲测资源最新最全---球球发(如果我们有侵犯了您权益的资源请联系我们删除