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

 找回密码
 立即注册
搜索

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

[复制链接]
ofshanghai 发表于 2016-11-8 09:43:22 | 显示全部楼层 |阅读模式
需求发布
金额范围: 10-50 元
预算金额: 10 元
开始时间: 2016-11-08
结束时间: 2016-11-08
联系方式: 隐藏内容
本帖最后由 ofshanghai 于 2016-11-9 11:31 编辑 , w: R; o1 C5 d0 z; g. C1 n

1 z- H$ d& d  h* ]  g8 Y, d6 H$ `3 P
昨天在修改首页四格,搜索到的方法,发现是可以适用。故分享给大家,有需求的可以测试。
$ i8 G4 n8 F1 y$ F0 b) e7 W
找到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"> 0 M2 ?: P, ?8 p( r) N# B
  2. var slideSpeed = 5000;
    & m) C( _. ^% B: l3 _7 K6 s* }
  3. var slideImgsize = [218,200]; - J& E9 J; E0 h
  4. var slideBorderColor = ‘{$_G['style']['specialborder']}’;
    * u' t/ h; V% C# S1 [8 J
  5. var slideBgColor = ‘{$_G['style']['commonbg']}’;
    . \7 d- J8 C% P1 W
  6. var slideImgs = new Array(); 3 C7 f2 f. D' F% Y0 i  _
  7. var slideImgLinks = new Array(); ! o! ^+ a+ l6 A# A( u8 m
  8. var slideImgTexts = new Array();
    3 E5 ~+ C- \; d6 s) U- d& J
  9. var slideSwitchColor = ‘{$_G['style']['tabletext']}’;
    6 h* r$ W0 D# {* z
  10. var slideSwitchbgColor = ‘{$_G['style']['commonbg']}’;
    & ]# q) N% N* u
  11. var slideSwitchHiColor = ‘{$_G['style']['specialborder']}’;
    % V1 f+ `. z6 q& u$ c7 _: H
  12. {eval $k = 1;} % P1 d$ d" c2 `2 {. f8 S1 [& q  @
  13. <!–{loop $grids['slide'] $stid $svalue}–> * [; D) g7 h; Y" |2 Z
  14.     slideImgs[<!--{echo $k}-->] = ‘$svalue[image]‘; 1 q$ Z/ m! g: O4 D. ~* ?# f7 E  i
  15.     slideImgLinks[<!--{echo $k}-->] = ‘{$svalue[url]}’; * {' p9 u' \; f5 w7 T6 r2 K
  16.     slideImgTexts[<!--{echo $k}-->] = ‘$svalue[subject]‘; 4 n' ]) |6 s4 t9 N8 ?0 Z9 S4 z( @
  17.     {eval $k=5;}  这里应该有误,应该不需要修改,原文:{eval$k++<span style="line-height: 1.5;">;}</span>
复制代码

  1. # o# ]) s2 _8 r: p8 ^
  2. dota闪电站小猪告诉大家上面这样觉得是不行滴,请先在FTP中找到/public_html/source/module/forum/forum_index.php,找到并编辑' S+ a! D0 d- P- i4 Q. Q

  3.   o- G0 b: @9 w1 n) {
  4.         if($_G['setting']['grid']['gridtype']) {
    - [  o) h7 l% H  S- ~* i
  5.             $grids['digest'] = C::t(‘forum_thread’)->fetch_all_for_guide(‘digest’, 0, array(), 3, 0, 0, 10, $_G['setting']['grid']['fids']); ) G" e" V) B. i# _( n
  6.         } else { : }$ h8 Y7 D% N
  7.             $images = C::t(‘forum_threadimage’)->fetch_all_order_by_tid(10); 9 B3 \' |) o# f  t/ Q- ]
  8.             foreach($images as $key => $value) {
    " g3 `$ u! @+ s6 p; F
  9.                 $tids[$value['tid']] = $value['tid'];
    " ~5 v0 ^1 q! W: I# q& k# E4 u
  10.             } . p0 X5 ?$ {& g( t' J/ O
  11.             $grids['image'] = C::t(‘forum_thread’)->fetch_all_by_tid($tids); 1 D' ^% t; l. c1 a2 z2 r7 t
  12.         }
复制代码
默认是10,不是所有的10需要调整,否则其他热门回复,最新主题展示数量也会改变展示数量。
  1. 修改成:
    ( Y* a* m8 i% F" g
  2.         if($_G['setting']['grid']['gridtype']) {
    " z, ^1 P0 m5 o  r4 M) q1 }
  3.             $grids['digest'] = C::t(‘forum_thread’)->fetch_all_for_guide(‘digest’, 0, array(), 3, 0, 0, 8, $_G['setting']['grid']['fids']);
    # I' D2 W2 ~  K
  4.         } else {
    # H3 B* {8 E9 P. l
  5.             $images = C::t(‘forum_threadimage’)->fetch_all_order_by_tid(8);
    5 T1 ^! _4 a0 S' d( H$ K* i
  6.             foreach($images as $key => $value) {
    - U3 G& Y' F  k2 N
  7.                 $tids[$value['tid']] = $value['tid'];
    , o: |9 t! @0 ?" _% ^8 D
  8.             }
    + ~, U" j4 G. z5 F1 C( R
  9.             $grids['image'] = C::t(‘forum_thread’)->fetch_all_by_tid($tids);
复制代码
应该只需要改2个数字,可以改为你需要展示的数量
欢迎交流,如有问题,欢迎留言。
' [/ X- N, g. @: [; n  Z* B. y

6 [8 s9 T7 [! p3 r9 }) H
原文参见: http://msn.shandian.biz/755.html

* A( s2 G4 d' N& L+ M) h! q9 \! c! L
回复

使用道具 举报

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 编辑 + e. X3 Z: T" O

  1. : a3 q1 d* j( _9 V+ `& W6 Q
  2.                                                                 <div class="module cl slidebox_grid" style="width:280px;height:210px">
    # S* k" j( ]7 X6 n. \" Q
  3.                                                                         <script type="text/javascript">
      U. ?# k) v8 I) f3 \7 _2 x/ v/ }
  4.                                                                         var slideSpeed = 5000;* ?& o) n8 Q2 O* R5 k
  5.                                                                         var slideImgsize = [280,210];
复制代码
template/default/forum/discuz.htm  中- n% O; ^3 |2 o

/ D4 d& ?4 @1 Mstyle="width:280px;height:210px这部分是限制图片宽度、高度;  Z6 Q2 R' c* t1 H, a
var slideImgsize = [280,210]这部分是滚动图片框高度(经测试,除了设置var slideImgsize 高度,宽度外;style中的宽度和高度,也要调整)
/ G& ~. y( _" y# G' A
  C' ~1 Y! k7 {, U* Q/ s% Z( a0 B: h
否则会出现图片超出图片框高度。  ?# L% G. U9 T+ S  W

) C  q- N5 M+ H4 ]8 a$ ~. P0 l
回复

使用道具 举报

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-10-22 14:43 , Processed in 0.110232 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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