欢迎来到素材无忧网,按 + 收藏我们
登录 注册 退出 找回密码

discuz x3.3帖子列表页调用帖子图片附件

时间: 2019-05-23 08:07 阅读: 作者:素材无忧网

代码可以直接写在模板forumdisplay_list.htm里,有不同数量不同样式。
以默认模板为例:
打开模板forum/forumdisplay_list.htm,找到83行左右:
  1. <!--{loop $_G['forum_threadlist'] $key $thread}-->
复制代码
在其下增加
  1. <!--{eval $tbid = DB::result(DB::query("SELECT tableid FROM ".DB::table('forum_attachment')." WHERE `tid`= '$thread[tid]'"));}-->
    <!--{if $tbid}-->
    <!--{eval $picount = DB::fetch_all("SELECT aid FROM ".DB::table('forum_attachment_'.$tbid.'')." WHERE `tid`= '$thread[tid]' AND `isimage`=1;");}-->
    <!--{eval $picnum = count($picount);}-->
    <!--{if $picnum < 3}-->
    <!--{eval $litpicnum = '1';}-->
    <!--{elseif $picnum > 2 && $picnum < 6}-->
    <!--{eval $litpicnum = '3';}-->
    <!--{elseif $picnum > 5}-->
    <!--{eval $litpicnum = '6';}-->
    <!--{/if}-->
    <!--{eval $covers = DB::fetch_all("SELECT attachment,aid,description FROM ".DB::table('forum_attachment_'.$tbid.'')." WHERE `tid`= '$thread[tid]' AND `isimage`=1 LIMIT 0,$litpicnum;");}-->
    <!--{/if}-->
    

再查找
  1. <!-- end of table "forum_G[fid]" branch 1/3 -->
复制代码
其上最近的</tr>之后增加
  1. <!--{if $tbid}-->
    <tr>
    <td></td>
    <td></td>
    <td colspan="4">
    <!--{loop $covers $thecover}-->
    <!--{if $litpicnum == 1}-->
    <a href="forum.php?mod=viewthread&tid=$thread[tid]" class="z pipe" title="$thecover[aid]"><img src="data/attachment/forum/$thecover['attachment']" width="100" height="100"/></a>
    <font class="z">This is what it is like to be with Trump.</font>
    <!--{else}-->
    <a href="forum.php?mod=viewthread&tid=$thread[tid]" class="z pipe" title="$thecover[aid]"><img src="data/attachment/forum/$thecover['attachment']" width="100" height="100"/></a>
    <!--{/if}-->
    <!--{/loop}-->
    </td>
    </tr>
    <!--{/if}-->
复制代码
再找到
  1. <!--{if !$thread['forumstick'] && ($thread['isgroup'] == 1 || $thread['fid'] != $_G['fid'])}-->
    <!--{if $thread['related_group'] == 0 && $thread['closed'] > 1}-->
    <!--{eval $thread[tid]=$thread[closed];}-->
    <!--{/if}-->
    <!--{if $groupnames[$thread[tid]]}-->
    <span class="fromg xg1"> [{lang from}: <a href="forum.php?mod=group&fid={$groupnames[$thread[tid]][fid]}" target="_blank" class="xg1">{$groupnames[$thread[tid]][name]}</a>]</span>
    <!--{/if}-->
    <!--{/if}-->
复制代码
其下增加
  1. <!--{if $tbid && !$picnum == 0}--><span style="color:red;"><!--{$picnum}-->P</span><!--{/if}--></a>
复制代码 结束。

具体的图片显示多少这里↓,<3显示1,>2且<6显示3,>5显示6。
  1. <!--{if $picnum < 3}-->
    <!--{eval $litpicnum = '1';}-->
    <!--{elseif $picnum > 2 && $picnum < 6}-->
    <!--{eval $litpicnum = '3';}-->
    <!--{elseif $picnum > 5}-->
    <!--{eval $litpicnum = '6';}-->
    <!--{/if}-->

这个是匆忙写的,没注意有没有逻辑漏洞,如有错请提出。

后面具体的样式是这段↓
  1. <!--{if $litpicnum == 1}-->
    <a href="forum.php?mod=viewthread&tid=$thread[tid]" class="z pipe" title="$thecover[aid]"><img src="data/attachment/forum/$thecover['attachment']" width="100" height="100"/></a>
    <font class="z">This is what it is like to be with Trump.</font>
    <!--{else}-->
    <a href="forum.php?mod=viewthread&tid=$thread[tid]" class="z pipe" title="$thecover[aid]"><img src="data/attachment/forum/$thecover['attachment']" width="100" height="100"/></a>
    <!--{/if}-->
复制代码
如果图片数量等于1,后面带个摘要。
否则图片横排铺开。具体数量会按上面的显示。

通常情况下,两种样式即可,1图和多图,即1图显示在左右,多图在下面铺开。
如果多种样式,<!--{if $litpicnum == 数量}-->此数量时的表现形式</if>
当然,这的数量$litpicnum是受上面的代码中与$picnum关系的限定。
$picnum是实际总数量,$litpicnum是经过判断后允许显示的数量。

版权声明: 本站资源均来自互联网或会员发布,如果侵犯了您的权益请与我们联系,我们将在24小时内删除!谢谢!

转载请注明: discuz x3.3帖子列表页调用帖子图片附件

标签:  
相关文章
模板推荐