需要修改文件/source/module/forum/forum_forumdisplay.php 第812行左右找到:
$threadids[$threadindex] = $thread['tid'];
复制代码
在其下方增加
//内容摘要
         include_once libfile('function/post');
        include_once libfile('function/attachment');
        $thread['post'] = C::t('forum_post')->fetch_all_by_tid_position($thread['posttableid'],$thread['tid'],1);
        $thread['post'] = array_shift($thread['post']);
        $thread['preview'] = messagecutstr($thread['post']['message'], 200);
        $attachments = C::t('forum_attachment_n')->fetch_all_by_id('tid:'.$thread['post']['tid'], 'pid', $thread['post']['pid']);
        $attachs = $imgattachs = array();
        foreach(C::t('forum_attachment')->fetch_all_by_id('pid', $thread['post']['pid'], 'aid') as $attach) {
                $attach = array_merge($attach, $attachments[$attach['aid']]);
                $attach['filenametitle'] = $attach['filename'];
                $attach['ext'] = fileext($attach['filename']);
                getattach_row($attach, $attachs, $imgattachs);
        }
        $thread['attachments'] = $imgattachs;
        //内容摘要END


模板中调用代码:
$thread['preview']
复制代码

20161221更新
另一些直接写在模板的方法:
代码1:
<!--{eval require_once(DISCUZ_ROOT."./source/function/function_post.php");}-->
<!--{echo messagecutstr(DB::result_first('SELECT `message` FROM '.DB::table('forum_post').' WHERE `tid` ='.$thread[tid].' AND `first` =1'),300);}-->


代码2:
<!--{eval $threadlist_message = DB::result(DB::query("SELECT message FROM ".DB::table('forum_post')." WHERE `tid` = $thread[tid]  AND `first` =1"));}-->
<!--{echo cutstr($threadlist_message,300)}-->

都有效,任选其一即可。

声明:有的资源均来自网络转载,版权归原作者所有,如有侵犯到您的权益 请联系邮箱:123456@qq.com 我们将配合处理!

原文地址:discuz 帖子列表页调用摘要代码发布于2023-05-04 16:55:36

相关推荐