Discuz!官方免费开源建站系统

 找回密码
 立即注册
搜索

[已完结] 论坛首页四格图片大小、展示数量、时间的设置

[复制链接]
ofshanghai 发表于 2016-11-8 09:43:22 | 显示全部楼层 |阅读模式
需求发布
金额范围: 10-50 元
预算金额: 10 元
开始时间: 2016-11-08
结束时间: 2016-11-08
联系方式: 隐藏内容
本帖最后由 ofshanghai 于 2016-11-9 11:31 编辑
; U& |+ c* o8 Q  G: c% D: [
/ n: Q+ z7 u' ^$ Y
昨天在修改首页四格,搜索到的方法,发现是可以适用。故分享给大家,有需求的可以测试。
/ @, f/ ~/ G' L) D
找到template/default/forum/discuz.htm大概第64-82行,我们看到有一个{eval $k=1;}…{eval $k++}  这段代码的意思就是,从1开始,有一个幻灯片就会加1,这样会一直循环下去,我们想让他显示5张幻灯片,只需要把$k++修改为$k=5(经过我测试,$k++这里不需要修改)就好了,另外如果要修改幻灯片播放速度,播放窗口大小,可以找到对应的slideSpeed,slideImgsize(这个是修改图片大小,默认好像是(218,202),数字可以改成你想要的大小来修改即可。(如果调整图片大了,里面还有一个style,宽度width也需要调整图片的宽度,否则边框线和图片会不一致,看着不舒服)
展示时间没有测试,有需要的可以调试。
  1. <script type="text/javascript">
    8 H. j3 J+ a1 |% n/ g8 V0 U6 Z
  2. var slideSpeed = 5000; " R4 O! [" g7 t
  3. var slideImgsize = [218,200]; 8 h2 T* L  _) k4 L* ^8 x
  4. var slideBorderColor = ‘{$_G['style']['specialborder']}’; 4 j+ a- v+ |- v" P. F
  5. var slideBgColor = ‘{$_G['style']['commonbg']}’; 0 B' k, w# p( }" N3 _) H
  6. var slideImgs = new Array(); 8 z* b1 q: r: d0 l' D
  7. var slideImgLinks = new Array(); & U$ V5 A2 s3 Y5 _9 X
  8. var slideImgTexts = new Array();   z, ]6 d( A* y$ o( [% P0 m( b$ ]
  9. var slideSwitchColor = ‘{$_G['style']['tabletext']}’;
    9 x% j7 q( a( F, F) b
  10. var slideSwitchbgColor = ‘{$_G['style']['commonbg']}’; 8 k& x% r6 F  H" p% s2 E* C
  11. var slideSwitchHiColor = ‘{$_G['style']['specialborder']}’;
      W; l/ X5 @0 B5 r! I% \: _# l
  12. {eval $k = 1;} 8 X" `% Q: h* M* r; ^; D* t3 n
  13. <!–{loop $grids['slide'] $stid $svalue}–>
    $ L- N5 p7 v7 F$ {
  14.     slideImgs[<!--{echo $k}-->] = ‘$svalue[image]‘;
    4 c: @7 d- ?' ^& d9 R1 T# R
  15.     slideImgLinks[<!--{echo $k}-->] = ‘{$svalue[url]}’; 9 z6 n! |2 Y4 F& a+ x( D9 T
  16.     slideImgTexts[<!--{echo $k}-->] = ‘$svalue[subject]‘;
    + |8 \8 v% z1 R/ @/ \  o- z
  17.     {eval $k=5;}  这里应该有误,应该不需要修改,原文:{eval$k++<span style="line-height: 1.5;">;}</span>
复制代码
  1. + e, P9 A! r1 ~  V1 X+ B
  2. dota闪电站小猪告诉大家上面这样觉得是不行滴,请先在FTP中找到/public_html/source/module/forum/forum_index.php,找到并编辑  n1 G: S/ l( }' o) l# Y
  3. " z& A' x9 A, n5 k4 ~
  4.         if($_G['setting']['grid']['gridtype']) { 1 V& y! d$ S* [  m
  5.             $grids['digest'] = C::t(‘forum_thread’)->fetch_all_for_guide(‘digest’, 0, array(), 3, 0, 0, 10, $_G['setting']['grid']['fids']);
    8 Z+ W9 {" J1 x& T) e- x, Y/ ?
  6.         } else { 5 i7 q% Y) d# y" G3 [
  7.             $images = C::t(‘forum_threadimage’)->fetch_all_order_by_tid(10); ! G+ P- ^7 ~1 y- p5 `" h" ]; T
  8.             foreach($images as $key => $value) { 1 C9 Q& f9 u0 j" ~% h. z5 ?# j& m
  9.                 $tids[$value['tid']] = $value['tid']; + {, l" r) t6 A& P, E' p6 _
  10.             } 2 X1 p- a" a8 k
  11.             $grids['image'] = C::t(‘forum_thread’)->fetch_all_by_tid($tids);
    : L$ U% T2 v/ L2 I  }) Q; w$ x
  12.         }
复制代码
默认是10,不是所有的10需要调整,否则其他热门回复,最新主题展示数量也会改变展示数量。
  1. 修改成: 5 A* \" H& r8 v2 Y% ~9 U2 Q
  2.         if($_G['setting']['grid']['gridtype']) { 8 x$ c, P% U- [# s
  3.             $grids['digest'] = C::t(‘forum_thread’)->fetch_all_for_guide(‘digest’, 0, array(), 3, 0, 0, 8, $_G['setting']['grid']['fids']);
    1 ~% ^; L# N# R2 C0 A7 J, @: Y
  4.         } else {
    # V3 Y1 z, X' i. ~. [/ [
  5.             $images = C::t(‘forum_threadimage’)->fetch_all_order_by_tid(8);
    0 r/ Q; i/ }9 [7 Z* f2 A
  6.             foreach($images as $key => $value) { 8 g/ Y% v+ t' n* X$ O( H; }
  7.                 $tids[$value['tid']] = $value['tid'];
    " H0 B- ~- o9 B+ D- ^. Z9 O
  8.             } ) M$ v0 g6 y% l0 O
  9.             $grids['image'] = C::t(‘forum_thread’)->fetch_all_by_tid($tids);
复制代码
应该只需要改2个数字,可以改为你需要展示的数量
欢迎交流,如有问题,欢迎留言。

/ _3 K- l/ K4 f$ |* }( c
2 n* c! F7 S- C$ w
原文参见: http://msn.shandian.biz/755.html
8 ^% S/ X3 z& y$ ]
回复

使用道具 举报

908050454 发表于 2016-11-8 10:16:23 | 显示全部楼层
给你一个大顶顶
回复

使用道具 举报

iajh51 发表于 2016-11-8 10:18:44 | 显示全部楼层
给你一个大顶顶
回复

使用道具 举报

 楼主| ofshanghai 发表于 2016-11-13 22:25:00 | 显示全部楼层
本帖最后由 ofshanghai 于 2016-11-13 22:26 编辑
4 Y. Y$ n$ R, h5 y7 c8 r

  1. 7 R$ g. C1 I* W1 p. j" B; K
  2.                                                                 <div class="module cl slidebox_grid" style="width:280px;height:210px">
    8 e! C: a; v& M! }" f7 |# J; v; L
  3.                                                                         <script type="text/javascript">
    1 |7 ?" {* r% Y
  4.                                                                         var slideSpeed = 5000;
    7 Y) M; e3 \5 i8 w1 \: Q
  5.                                                                         var slideImgsize = [280,210];
复制代码
template/default/forum/discuz.htm  中
$ F# d% B! P0 v3 M/ C5 F! q
3 N) K9 ]6 T0 W' Ostyle="width:280px;height:210px这部分是限制图片宽度、高度;  m% V* y* P* `% I8 Q
var slideImgsize = [280,210]这部分是滚动图片框高度(经测试,除了设置var slideImgsize 高度,宽度外;style中的宽度和高度,也要调整)
9 ?* d9 l' K/ t1 K  W% c' n
2 f' g9 _& |$ A* ?3 h1 [) e; {' d6 g" L- x3 y4 ~& l. G
否则会出现图片超出图片框高度。3 E6 T+ l: ^1 Y- X0 w+ T

& F! T% J" F! {) P6 ^
回复

使用道具 举报

qmdpy 发表于 2016-11-15 10:50:45 | 显示全部楼层
长见识了,感谢楼主分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2025-7-15 04:35 , Processed in 0.119439 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表