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

 找回密码
 立即注册
搜索

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

[复制链接]
ofshanghai 发表于 2016-11-8 09:43:22 | 显示全部楼层 |阅读模式
需求发布
金额范围: 10-50 元
预算金额: 10 元
开始时间: 2016-11-08
结束时间: 2016-11-08
联系方式: 隐藏内容
本帖最后由 ofshanghai 于 2016-11-9 11:31 编辑 ' D( P$ v5 S3 a0 P* z$ F

  E: o, R3 E" p/ `! [7 H- D% M2 A
昨天在修改首页四格,搜索到的方法,发现是可以适用。故分享给大家,有需求的可以测试。

) f6 K6 o; _% [5 y+ d9 A
找到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"> : M1 }- a% k5 K" Q  L
  2. var slideSpeed = 5000;
    3 W! y# m5 V7 Z* E# ^, F) ?. X& z* j- d
  3. var slideImgsize = [218,200]; $ H, ?1 P* o( T7 c! {  C
  4. var slideBorderColor = ‘{$_G['style']['specialborder']}’; ( B! r" w. O7 I9 [6 ?/ b, j
  5. var slideBgColor = ‘{$_G['style']['commonbg']}’;
    * J& ^* w& ]7 A. x- [
  6. var slideImgs = new Array();
    / }$ p! y+ q3 a! u
  7. var slideImgLinks = new Array(); ) v' B: `. }) O1 y* N
  8. var slideImgTexts = new Array(); 9 X- b' Q7 j/ @: X! N  q9 \  G
  9. var slideSwitchColor = ‘{$_G['style']['tabletext']}’;
    5 d' d) A- X( C% V4 `) L, i  Z' o
  10. var slideSwitchbgColor = ‘{$_G['style']['commonbg']}’;
    1 `( I# C7 g7 U, S, A) ^
  11. var slideSwitchHiColor = ‘{$_G['style']['specialborder']}’;
    ( ^& B1 A. ^! j9 Y5 Y8 \
  12. {eval $k = 1;}
    . P0 T# O9 o+ `) b6 y0 X/ c
  13. <!–{loop $grids['slide'] $stid $svalue}–>
    / g7 T: v# V- ?/ L
  14.     slideImgs[<!--{echo $k}-->] = ‘$svalue[image]‘; ) F( B9 M, E! r3 v6 n: x" d1 A
  15.     slideImgLinks[<!--{echo $k}-->] = ‘{$svalue[url]}’; % x* T9 ^4 j: {5 z. l, g# j$ K
  16.     slideImgTexts[<!--{echo $k}-->] = ‘$svalue[subject]‘; 0 R: ^; U1 u! N' w" |8 w8 A
  17.     {eval $k=5;}  这里应该有误,应该不需要修改,原文:{eval$k++<span style="line-height: 1.5;">;}</span>
复制代码

  1. * p2 N' G( `# ?) G. }$ G# D
  2. dota闪电站小猪告诉大家上面这样觉得是不行滴,请先在FTP中找到/public_html/source/module/forum/forum_index.php,找到并编辑% m( w5 W$ W; C, M9 C

  3. 0 ]5 v( L( \& M+ A; L
  4.         if($_G['setting']['grid']['gridtype']) { % ~5 C3 t; y/ L/ x/ E  I/ p& T
  5.             $grids['digest'] = C::t(‘forum_thread’)->fetch_all_for_guide(‘digest’, 0, array(), 3, 0, 0, 10, $_G['setting']['grid']['fids']); ' g, f7 y4 C4 B  [0 s5 }+ `
  6.         } else { : _* y6 D! U0 h3 D/ [; }, M
  7.             $images = C::t(‘forum_threadimage’)->fetch_all_order_by_tid(10); + ?. z' E. H! k, b. E3 i) x
  8.             foreach($images as $key => $value) {
    . B7 ~/ C! a$ W( {, X3 B5 y
  9.                 $tids[$value['tid']] = $value['tid']; 0 p7 P- H' z, T
  10.             } , a( o5 x7 I! T
  11.             $grids['image'] = C::t(‘forum_thread’)->fetch_all_by_tid($tids); * e* l# @! ~5 Y# n" {
  12.         }
复制代码
默认是10,不是所有的10需要调整,否则其他热门回复,最新主题展示数量也会改变展示数量。
  1. 修改成: : M2 |( ^, l, e- X1 x# {" F! p
  2.         if($_G['setting']['grid']['gridtype']) { $ B- |; E$ F- m4 {& ~
  3.             $grids['digest'] = C::t(‘forum_thread’)->fetch_all_for_guide(‘digest’, 0, array(), 3, 0, 0, 8, $_G['setting']['grid']['fids']);
    % q* o& c+ ~( f* H# U; x- C
  4.         } else {
    . N/ _2 |$ V# Y5 R
  5.             $images = C::t(‘forum_threadimage’)->fetch_all_order_by_tid(8);
    0 Y3 |- G  Y, M- Q# i1 ?/ T
  6.             foreach($images as $key => $value) {
    0 L, ]8 l5 q. Q; e% B* g0 [6 K& f
  7.                 $tids[$value['tid']] = $value['tid']; # t! Y4 k% Z) `
  8.             }
    $ T3 d( G/ I. K/ e
  9.             $grids['image'] = C::t(‘forum_thread’)->fetch_all_by_tid($tids);
复制代码
应该只需要改2个数字,可以改为你需要展示的数量
欢迎交流,如有问题,欢迎留言。

# T9 K& ]0 z2 ~0 ^3 n; w0 d9 y% i9 E" B) {- `- X' j- j7 u$ l! q
原文参见: http://msn.shandian.biz/755.html
; k; f$ B# W& Q
回复

使用道具 举报

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 编辑
% v$ B0 L1 d% c2 x

  1. 1 t7 Z8 \+ ]. g9 \1 X8 g, u
  2.                                                                 <div class="module cl slidebox_grid" style="width:280px;height:210px">% N3 h3 D5 u6 R$ o% o+ l
  3.                                                                         <script type="text/javascript">
    1 g0 N3 M* G9 f6 Y! n* c; w
  4.                                                                         var slideSpeed = 5000;
    / T+ X3 U8 U/ [  i7 }3 [& M# c
  5.                                                                         var slideImgsize = [280,210];
复制代码
template/default/forum/discuz.htm  中# ?; l/ ]2 Y4 M

" O& Q' b- D. J" R- S- L+ Astyle="width:280px;height:210px这部分是限制图片宽度、高度;) }. g" _* Q, b
var slideImgsize = [280,210]这部分是滚动图片框高度(经测试,除了设置var slideImgsize 高度,宽度外;style中的宽度和高度,也要调整)* K- i6 u7 Y0 r1 e1 Z% A, W6 B
, F/ N- K7 t) z  R1 y& K! P9 s" [
: G5 i( v* Q' z1 {" D# j" B! ~" k! u! e
否则会出现图片超出图片框高度。7 D6 I( C- W; y/ c

/ M3 E( E% q" j4 {3 l* p( U
回复

使用道具 举报

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-11-6 07:59 , Processed in 0.117110 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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