amw111 发表于 2024-7-25 21:19:32

首页四格最新主题排序算法,如何修改为回复时间排序

算法在source/module/forum/forum_index.php


[*]$grids = array();
[*]if($_G['setting']['grid']['showgrid']) {
[*]      loadcache('grids');
[*]      $cachelife = $_G['setting']['grid']['cachelife'] ? $_G['setting']['grid']['cachelife'] : 600;
[*]      $now = dgmdate(TIMESTAMP, lang('forum/misc', 'y_m_d')).' '.lang('forum/misc', 'week_'.dgmdate(TIMESTAMP, 'w'));
[*]      if(TIMESTAMP - $_G['cache']['grids']['cachetime'] < $cachelife) {
[*]                $grids = $_G['cache']['grids'];
[*]      } else {
[*]                $images = array();
[*]                $_G['setting']['grid']['fids'] = in_array(0, $_G['setting']['grid']['fids']) ? 0 : $_G['setting']['grid']['fids'];
[*]
[*]                if($_G['setting']['grid']['gridtype']) {
[*]                        $grids['digest'] = C::t('forum_thread')->fetch_all_for_guide('digest', 0, array(), 3, 0, 0, 10, $_G['setting']['grid']['fids']);
[*]                } else {
[*]                        $images = C::t('forum_threadimage')->fetch_all_order_by_tid_for_guide(10, 0, $_G['setting']['grid']['fids']);
[*]                        foreach($images as $key => $value) {
[*]                              $tids[$value['tid']] = $value['tid'];
[*]                        }
[*]                        $grids['image'] = C::t('forum_thread')->fetch_all_by_tid($tids);
[*]                }
[*]                $grids['newthread'] = C::t('forum_thread')->fetch_all_for_guide('newthread', 0, array(), 0, 0, 0, 10, $_G['setting']['grid']['fids']);
[*]
[*]                $grids['newreply'] = C::t('forum_thread')->fetch_all_for_guide('reply', 0, array(), 0, 0, 0, 10, $_G['setting']['grid']['fids']);
[*]                $grids['hot'] = C::t('forum_thread')->fetch_all_for_guide('hot', 0, array(), 3, 0, 0, 10, $_G['setting']['grid']['fids']);
[*]
[*]                $_G['forum_colorarray'] = array('', '#EE1B2E', '#EE5023', '#996600', '#3C9D40', '#2897C5', '#2B65B7', '#8F2A90', '#EC1282');
[*]                foreach($grids as $type => $gridthreads) {
[*]                        foreach($gridthreads as $key => $gridthread) {
[*]                              $gridthread['dateline'] = str_replace('&quot;', '\'', dgmdate($gridthread['dateline'], 'u', '9999', getglobal('setting/dateformat')));
[*]                              $gridthread['lastpost'] = str_replace('&quot;', '\'', dgmdate($gridthread['lastpost'], 'u', '9999', getglobal('setting/dateformat')));
[*]                              if($gridthread['highlight'] && $_G['setting']['grid']['highlight']) {
[*]                                        $string = sprintf('%02d', $gridthread['highlight']);
[*]                                        $stylestr = sprintf('%03b', $string);
[*]
[*]                                        $gridthread['highlight'] = ' style=&quot;';
[*]                                        $gridthread['highlight'] .= $stylestr ? 'font-weight: bold;' : '';
[*]                                        $gridthread['highlight'] .= $stylestr ? 'font-style: italic;' : '';
[*]                                        $gridthread['highlight'] .= $stylestr ? 'text-decoration: underline;' : '';
[*]                                        $gridthread['highlight'] .= $string ? 'color: '.$_G['forum_colorarray'][$string] : '';
[*]                                        $gridthread['highlight'] .= '&quot;';
[*]                              } else {
[*]                                        $gridthread['highlight'] = '';
[*]                              }
[*]                              if($_G['setting']['grid']['textleng']) {
[*]                                        $gridthread['oldsubject'] = dhtmlspecialchars($gridthread['subject']);
[*]                                        $gridthread['subject'] = cutstr($gridthread['subject'], $_G['setting']['grid']['textleng']);
[*]                              }
[*]
[*]                              $grids[$type][$key] = $gridthread;
[*]                        }
[*]                }
[*]                if(!$_G['setting']['grid']['gridtype']) {
[*]
[*]                        $grids['slide'] = $focuspic = $focusurl = $focustext = array();
[*]                        $grids['focus'] = 'config=5|0xffffff|0x0099ff|50|0xffffff|0x0099ff|0x000000';
[*]                        foreach($grids['image'] as $ithread) {
[*]                              if($ithread['displayorder'] < 0) {
[*]                                        continue;
[*]                              }
[*]                              if($images[$ithread['tid']]['remote']) {
[*]                                        $imageurl = $_G['setting']['ftp']['attachurl'].'forum/'.$images[$ithread['tid']]['attachment'];
[*]                              } else {
[*]                                        $imageurl = $_G['setting']['attachurl'].'forum/'.$images[$ithread['tid']]['attachment'];
[*]                              }
[*]                              $grids['slide'][$ithread['tid']] = array(
[*]                                                'image' => $imageurl,
[*]                                                'url' => 'forum.php?mod=viewthread&tid='.$ithread['tid'],
[*]                                                'subject' => addslashes($ithread['subject'])
[*]                                        );
[*]                        }
[*]                        $grids['slide'] = array_reverse($grids['slide'], true);
[*]                }
[*]                $grids['cachetime'] = TIMESTAMP;
[*]                savecache('grids', $grids);      }
模板插入点

template/default/touch/forum/discuz.htm


[*]</div>
[*]                <div id=&quot;tabs-box&quot; class=&quot;swiper-container listbox cl&quot;>
[*]                        <div class=&quot;swiper-wrapper&quot;>
[*]                              <div class=&quot;swiper-slide&quot;>
[*]                                        <ul>
[*]                                        <!--{loop $grids['newthread'] $thread}-->
[*]                                        <!--{if !$thread['forumstick'] && $thread['closed'] > 1 && ($thread['isgroup'] == 1 || $thread['fid'] != $_G['fid'])}-->
[*]                                                <!--{eval $thread['tid']=$thread['closed'];}-->
[*]                                        <!--{/if}-->
[*]                                        <!--{eval $i++;}-->
[*]                                        <!--{eval $typeid = $tids_typeids[$thread['tid']];}-->
[*]                                        <li><a href=&quot;forum.php?mod=viewthread&tid=$thread['tid']&quot;{if $thread['highlight']} $thread['highlight']{/if}><span class=&quot;mybk&quot;>[{$typeid_name[$typeid]}]</span><span class=&quot;mnum&quot;>$i</span>{$thread['oldsubject']}</a></li>
[*]                                        <!--{/loop}-->
[*]                                        </ul>                              </div>




来源:https://www.dismall.com/thread-23002-1-1.html
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: 首页四格最新主题排序算法,如何修改为回复时间排序