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

 找回密码
 立即注册
搜索

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

[复制链接]
ofshanghai 发表于 2016-11-8 09:43:22 | 显示全部楼层 |阅读模式
需求发布
金额范围: 10-50 元
预算金额: 10 元
开始时间: 2016-11-08
结束时间: 2016-11-08
联系方式: 隐藏内容
本帖最后由 ofshanghai 于 2016-11-9 11:31 编辑
* z5 o. Z$ {$ ^, k) a% _# ~
# y8 J! ~0 ^9 X
昨天在修改首页四格,搜索到的方法,发现是可以适用。故分享给大家,有需求的可以测试。
1 Y* B  T. w. {! j
找到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">
      {1 C1 h' f8 j9 h
  2. var slideSpeed = 5000;
    / M8 L2 k! j; o
  3. var slideImgsize = [218,200]; 9 }; s, @& X  g! [) a
  4. var slideBorderColor = ‘{$_G['style']['specialborder']}’;
    1 T3 _$ x% x- [7 Y& [
  5. var slideBgColor = ‘{$_G['style']['commonbg']}’; ' d4 D. ^- c, w8 y4 N5 p
  6. var slideImgs = new Array();
    / P( Z2 t- A, X* \. Z4 O: y
  7. var slideImgLinks = new Array(); 5 H; N: a8 }+ X6 D: A$ I
  8. var slideImgTexts = new Array(); - ]/ F" \& F* d
  9. var slideSwitchColor = ‘{$_G['style']['tabletext']}’;
    % W$ q$ u6 C- }1 n8 E: k8 v3 O
  10. var slideSwitchbgColor = ‘{$_G['style']['commonbg']}’; 3 }9 a/ C  j4 Y& z
  11. var slideSwitchHiColor = ‘{$_G['style']['specialborder']}’; 6 X8 g; ?2 m" N4 I6 f2 U+ c. i
  12. {eval $k = 1;}
    ! k8 A; D3 T( t' j5 o
  13. <!–{loop $grids['slide'] $stid $svalue}–> # n9 O, t3 B* ^1 z
  14.     slideImgs[<!--{echo $k}-->] = ‘$svalue[image]‘; 3 K# ~5 w, c0 q8 Z7 m
  15.     slideImgLinks[<!--{echo $k}-->] = ‘{$svalue[url]}’; 5 X- I0 L2 ?6 t% h& v+ R
  16.     slideImgTexts[<!--{echo $k}-->] = ‘$svalue[subject]‘; 4 ~3 m; A# K8 B8 [
  17.     {eval $k=5;}  这里应该有误,应该不需要修改,原文:{eval$k++<span style="line-height: 1.5;">;}</span>
复制代码

  1. 0 E0 i7 c! A3 S# g8 G' J- S
  2. dota闪电站小猪告诉大家上面这样觉得是不行滴,请先在FTP中找到/public_html/source/module/forum/forum_index.php,找到并编辑7 V9 b% u0 g8 `7 K- p

  3. ' R8 Y' C( @: H. s* ?2 v
  4.         if($_G['setting']['grid']['gridtype']) { 4 V- K2 X+ x: `) W5 \7 y' A2 t
  5.             $grids['digest'] = C::t(‘forum_thread’)->fetch_all_for_guide(‘digest’, 0, array(), 3, 0, 0, 10, $_G['setting']['grid']['fids']);
    ; }3 H4 n  [6 R$ @/ `$ N
  6.         } else { : D. E  I+ M  `* g" M+ u; a' \* B1 |
  7.             $images = C::t(‘forum_threadimage’)->fetch_all_order_by_tid(10); 4 t# H( L# f7 y" j  j( L
  8.             foreach($images as $key => $value) { 6 H3 H2 z0 g! g( y6 U( d6 r7 `
  9.                 $tids[$value['tid']] = $value['tid']; 9 E/ ]4 b6 Z! i& u$ m% y2 F
  10.             } - P% N4 C4 }3 P
  11.             $grids['image'] = C::t(‘forum_thread’)->fetch_all_by_tid($tids); 3 q! k3 o# t. |: a7 `7 R. D
  12.         }
复制代码
默认是10,不是所有的10需要调整,否则其他热门回复,最新主题展示数量也会改变展示数量。
  1. 修改成: 5 l! N0 V. I4 p- N% V2 I& I
  2.         if($_G['setting']['grid']['gridtype']) { # j: J+ v. F8 N  I; s4 o
  3.             $grids['digest'] = C::t(‘forum_thread’)->fetch_all_for_guide(‘digest’, 0, array(), 3, 0, 0, 8, $_G['setting']['grid']['fids']);
    , Y! y2 w7 S% q0 h
  4.         } else { # x" }& s( {0 ?+ r- O: A7 C
  5.             $images = C::t(‘forum_threadimage’)->fetch_all_order_by_tid(8); 8 N( r" M! J2 E5 K* |9 ~
  6.             foreach($images as $key => $value) {
    5 o4 ^  ^3 Q3 {, r
  7.                 $tids[$value['tid']] = $value['tid'];
      `) M5 W$ [% u" P
  8.             }
    , H5 f: k  m- [$ K% ]! q! }" I
  9.             $grids['image'] = C::t(‘forum_thread’)->fetch_all_by_tid($tids);
复制代码
应该只需要改2个数字,可以改为你需要展示的数量
欢迎交流,如有问题,欢迎留言。
! e* B7 W( _7 J4 r: V; \
* f7 b3 u; ?, S, D( @
原文参见: http://msn.shandian.biz/755.html
! c8 w- N0 u+ ~; R+ J) P
回复

使用道具 举报

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 x" f: C! f6 F% J

  1. 5 {* B$ u( O1 ?
  2.                                                                 <div class="module cl slidebox_grid" style="width:280px;height:210px">
    / e/ K0 _, Y- m" S
  3.                                                                         <script type="text/javascript">" n  `0 k8 }5 o6 v& j
  4.                                                                         var slideSpeed = 5000;
    0 e7 Z0 [4 f- B& K1 C' C
  5.                                                                         var slideImgsize = [280,210];
复制代码
template/default/forum/discuz.htm  中3 w% \& g, G' f+ Z0 z

+ [/ }3 t$ |3 |' {: {0 \style="width:280px;height:210px这部分是限制图片宽度、高度;
, d6 D* x! D+ n1 h/ M2 l. jvar slideImgsize = [280,210]这部分是滚动图片框高度(经测试,除了设置var slideImgsize 高度,宽度外;style中的宽度和高度,也要调整)
5 h1 W/ z/ ?3 y# {. S
/ y% G. k8 }& O) ^$ L- z9 @& c' t& _2 A4 e: `
否则会出现图片超出图片框高度。
* T4 {0 I' z( N2 d4 B3 ~
: G# J- q0 U* K9 i
回复

使用道具 举报

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-11-13 03:44 , Processed in 0.127668 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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