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

 找回密码
 立即注册
搜索

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

[复制链接]
ofshanghai 发表于 2016-11-8 09:43:22 | 显示全部楼层 |阅读模式
需求发布
金额范围: 10-50 元
预算金额: 10 元
开始时间: 2016-11-08
结束时间: 2016-11-08
联系方式: 隐藏内容
本帖最后由 ofshanghai 于 2016-11-9 11:31 编辑
( ^+ f9 d+ y5 Y6 X% n5 J! J. h( t; K& x1 ?( ]
昨天在修改首页四格,搜索到的方法,发现是可以适用。故分享给大家,有需求的可以测试。

4 f  U* T6 y4 H2 X0 M, c* h5 z
找到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">
    3 h6 k" |6 ~1 o! W
  2. var slideSpeed = 5000;
    3 C( x# M" O9 k1 N# F6 T: T% G
  3. var slideImgsize = [218,200]; / h4 A& ^5 u" p
  4. var slideBorderColor = ‘{$_G['style']['specialborder']}’;
    ( B! c. N) K& P; ]- |
  5. var slideBgColor = ‘{$_G['style']['commonbg']}’; * a& N0 S3 D- {5 ]! Q
  6. var slideImgs = new Array(); & x5 M/ N! j3 o4 k' T
  7. var slideImgLinks = new Array();
    6 R9 b0 p9 V# A
  8. var slideImgTexts = new Array(); 7 b4 R: @, W, x. F; e# I
  9. var slideSwitchColor = ‘{$_G['style']['tabletext']}’; & ]# C& b6 k# F* e; x  w
  10. var slideSwitchbgColor = ‘{$_G['style']['commonbg']}’;
    / p# n- t2 x9 E2 J% H
  11. var slideSwitchHiColor = ‘{$_G['style']['specialborder']}’;
    , Z* N% h/ U3 L* w( D. X
  12. {eval $k = 1;} % \, r( ^7 H6 O& h
  13. <!–{loop $grids['slide'] $stid $svalue}–> ; K  k% V+ E! p6 `$ {3 u7 I6 I
  14.     slideImgs[<!--{echo $k}-->] = ‘$svalue[image]‘; - s' \" n  V2 ^/ Q0 i! W5 X' @. a" Q
  15.     slideImgLinks[<!--{echo $k}-->] = ‘{$svalue[url]}’; 3 T! p: X' R+ d- J
  16.     slideImgTexts[<!--{echo $k}-->] = ‘$svalue[subject]‘; + X6 m" W* C4 m6 R, \5 W3 b& j
  17.     {eval $k=5;}  这里应该有误,应该不需要修改,原文:{eval$k++<span style="line-height: 1.5;">;}</span>
复制代码
  1. * S$ p6 H7 g8 C/ \4 @
  2. dota闪电站小猪告诉大家上面这样觉得是不行滴,请先在FTP中找到/public_html/source/module/forum/forum_index.php,找到并编辑
    / h  V; f: o. u& n1 a2 {2 Z/ a

  3. ) c$ H* E2 ^; b; U
  4.         if($_G['setting']['grid']['gridtype']) { 5 \# ?8 @0 M. l; k# }$ Y, T7 K! p
  5.             $grids['digest'] = C::t(‘forum_thread’)->fetch_all_for_guide(‘digest’, 0, array(), 3, 0, 0, 10, $_G['setting']['grid']['fids']); * W3 e* ?" u/ B( G/ Y
  6.         } else { , n# J7 I) C. h9 m1 t/ I
  7.             $images = C::t(‘forum_threadimage’)->fetch_all_order_by_tid(10); 4 ~, `7 c0 x3 y: c& [
  8.             foreach($images as $key => $value) {
    4 m! I& x. R' ?7 I
  9.                 $tids[$value['tid']] = $value['tid'];
    1 ~+ R! R, Y, Y; `/ F" d
  10.             }
    * ~" u8 B6 B# E4 j
  11.             $grids['image'] = C::t(‘forum_thread’)->fetch_all_by_tid($tids); $ ^( I+ K! ~1 q' @7 M- f' U8 l
  12.         }
复制代码
默认是10,不是所有的10需要调整,否则其他热门回复,最新主题展示数量也会改变展示数量。
  1. 修改成: " u3 R; c# {4 X, Y$ U
  2.         if($_G['setting']['grid']['gridtype']) {
    / E* i, i0 u0 d* ^( ?$ z
  3.             $grids['digest'] = C::t(‘forum_thread’)->fetch_all_for_guide(‘digest’, 0, array(), 3, 0, 0, 8, $_G['setting']['grid']['fids']);
    ) M- K# S. E; A! h+ M& }
  4.         } else {
    $ l& u- ^7 W" ?3 }1 Z- P
  5.             $images = C::t(‘forum_threadimage’)->fetch_all_order_by_tid(8);
    8 [' V5 V  F8 n" t7 |
  6.             foreach($images as $key => $value) { ' o- I6 x6 }2 d" {; r( l/ T
  7.                 $tids[$value['tid']] = $value['tid']; - i! O1 P" j4 b6 F# I- [% D
  8.             }
    % F% P& ]0 ?! T1 ~5 N1 l
  9.             $grids['image'] = C::t(‘forum_thread’)->fetch_all_by_tid($tids);
复制代码
应该只需要改2个数字,可以改为你需要展示的数量
欢迎交流,如有问题,欢迎留言。
2 o4 x2 d$ [8 U. d% Q1 M' l
' i- A* H6 }1 b# m2 Y3 F, B
原文参见: http://msn.shandian.biz/755.html
4 _4 l/ o: S' |1 c, h
回复

使用道具 举报

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 编辑
: B. X$ g. W+ b# K: m4 b

  1. . g; `. ]- t8 r3 ^
  2.                                                                 <div class="module cl slidebox_grid" style="width:280px;height:210px">& G: y  n, `; X9 w1 `$ J; s
  3.                                                                         <script type="text/javascript">
    9 K! _9 e! i$ T
  4.                                                                         var slideSpeed = 5000;9 U! [# U+ _8 r6 z
  5.                                                                         var slideImgsize = [280,210];
复制代码
template/default/forum/discuz.htm  中  s  z: d. k) Y2 X) m

+ n! y( P# `) z1 nstyle="width:280px;height:210px这部分是限制图片宽度、高度;  [0 d; P4 s7 I1 }& T0 F, }. s
var slideImgsize = [280,210]这部分是滚动图片框高度(经测试,除了设置var slideImgsize 高度,宽度外;style中的宽度和高度,也要调整)9 c6 c' y( V1 ^+ u* j" V

2 r. t6 _/ U$ M! v9 Q9 f5 X4 H, I2 t6 _/ }9 w) B
否则会出现图片超出图片框高度。. f% A2 l5 L. V+ F% R

) B/ g2 \' N$ {- `2 b8 o- P
回复

使用道具 举报

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-11-17 09:47 , Processed in 0.107786 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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