rinald_未来往事

discuz个人空间主题列表 图片模式实现方法

Discuz

discuz X3空间主题列表 图片展现模式,discuz实现个人空间主题列表调用图片模式,discuz home图片列表 如果需要实现该呈现方式,我们需要首先了解discuz封面图片存储原理:
discuz没有将主题列表封面路径存在数据表中,只是在pre_forum_thread表中存了一个cover标识。然后用getthreadcover 函数调取,diy调用的图片也会产生缩略图,可以设置缩略图的质量。
封面图片存储路径格式:data/attachment/forum/threadcover/43/ec/81.jpg

getthreadcover 函数:

  1. function getthreadcover($tid, $cover = 0, $getfilename = 0) {
  2. global $_G;
  3. if(empty($tid)) {
  4. return '';
  5. }
  6. $coverpath = '';
  7. $covername = 'threadcover/'.substr(md5($tid), 0, 2).'/'.substr(md5($tid), 2, 2).'/'.$tid.'.jpg';
  8. if($getfilename) {
  9. return $covername;
  10. }
  11. if($cover) {
  12. $coverpath = ($cover < 0 ? $_G['setting']['ftp']['attachurl'] : $_G['setting']['attachurl']).'forum/'.$covername;
  13. }
  14. return $coverpath;
  15. }
  16. 文件路径:/source/function/function_forum.php

实现方法:
修改:/source/language/home/lang_template.php
添加like 喜欢或查看

修改:/template/default/home/space_thread.htm
处理封面图:

  1. {eval
  2. $covername = 'threadcover/'.substr(md5($thread[tid]), 0, 2).'/'.substr(md5($thread[tid]), 2, 2).'/'.$thread[tid].'.jpg';
  3. $coverpath = ($cover < 0 ? $_G['setting']['ftp']['attachurl'] : $_G['setting']['attachurl']).'forum/'.$covername;
  4. }
  5. 图片列表
  6. <li style="width: 227px; left: 0px; top: 0px;float:left;">
  7. <div class="c cl">
  8. <a class="z" title="$thread[subject]" onclick="atarget(this)" href="forum.php?mod=viewthread&tid=$thread[tid]">
  9. <img width="203" alt="$thread[subject]" src="{eval echo $coverpath;}">
  10. </a>
  11. </div>
  12. <h3 class="xw0">
  13. <a href="forum.php?mod=viewthread&tid=$thread[tid]" onclick="atarget(this)" target="_blank" {if $thread['displayorder'] == -1}class="recy"{/if}>$thread[subject]</a>
  14. </h3>
  15. <div class="auth cl">
  16. <cite class="xg1 y">
  17. {lang like}: <em>$thread[views]</em> {lang reply}: <a title="0 回复" href="forum.php?mod=viewthread&tid=$thread[tid]">$thread[replies]</a>
  18. </cite>
  19. <a href="home.php?mod=space&uid=$thread[authorid]" target="_blank">$thread[author]</a>$thread[dateline]</div>
  20. </li>

效果如图:

点击下载homepic.zipPS:附件为UTF-8编码。

如果遇到问题需要支持可以联系博主QQ,加QQ视为认同付费支持. 感谢您对 未来往事 的支持!:136654168:51" alt="点击这里给我发消息" title="点击这里给我发消息"/>

严重鄙视垃圾网站“Discuz教程网(www.discuz.1314study.com)”这种伸手党,抄袭本博内容用于商业目的且不注明出处!

原文作者:rinald
原文地址:http://fity.cn/post/468.html
互联网技术更新较快,本站很多文章具有实效性,我会及时更新原文,但转载的文章无法通知更新。为了不给读者造成困惑或误导,请您在转载时保留此出处信息,尊重别人也是尊重自己。

已有12位网友发表了看法:

1LMr. Rowe 2014-04-30 08:58:29 回复
功能终于实现了。感谢!
2L小小 2014-05-28 09:53:26 回复
确实成功了。谢谢。有网站盗用你的东西
2Lrinald 2014-05-29 08:40:05 回复
@小小 欢迎常来
3L梦妮 2014-06-12 15:20:11 回复
请问博主,这如何调用只有封面图片的主题呢?或者说调用特定某个和某些版块里的带封面图片的主题?
3Lrinald 2014-06-12 23:23:12 回复
@梦妮 请添加判断条件即可。欢迎来访!
4L美哦 2014-07-25 17:16:44 回复
很不错,感谢分享。顺便问下,使用外链图片能生成图片列表模式吗?
5L易拉罐 2014-09-14 14:52:43 回复
看的不是很懂,能详细点吗
6L易拉罐 2014-09-14 14:59:56 回复
为什么我加了{eval这段页面就空白不显示了
6Lrinald 2014-09-14 23:40:13 回复
@易拉罐 说明你的语法有错误,由于discuz自身屏蔽了错误   当页面存在错误   即会显示空白
7L易拉罐 2014-09-28 02:46:26 回复
非常感谢。请问知道怎么在这个页面输出分类信息的自定义字段吗?
8LIce 2015-03-08 14:34:06 回复
discuz3.2,我按照你这么设置,图片路劲不对,压根找不到那路径
8Lrinald 2015-03-09 08:44:08 回复
@Ice 教程支持3.2。

发表评论

必填

选填

选填

必填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。