discuz 主题列表调用版块名称方法

来自版块 Discuz教程
1648
0
温馨提示:如下载链接失效,请前往 问题反馈专用帖 进行反馈! 兔源码交流群:493651246
  1. <!--{template common/header}-->
  2. <!-- header start -->
  3. <header class="header">
  4.     <div class="nav">
  5.                 <div class="y"><a href="forum.php?mod=post&action=newthread&fid=$_G[fid]" title="{lang send_threads}"><span>交作业</span></a></div>
  6.         <a href="forum.php?forumlist=1" class="z"><img src="{STATICURL}image/mobile/images/icon_back.png" /></a>
  7.                 <span class="category">
  8.                         <!--{if $subexists && $_G['page'] == 1}-->
  9.                         <span class="display name vm" href="#subname_list">
  10.                                 <h2 class="tit"><!--{eval echo strip_tags($_G['forum']['name']) ? strip_tags($_G['forum']['name']) : $_G['forum']['name'];}--></h2>
  11.                                 <img src="{STATICURL}image/mobile/images/icon_arrow_down.png">
  12.                         </span>
  13.                         <div id="subname_list" class="subname_list" display="true" style="display:none;">
  14.                                 <ul>
  15.                                 <!--{loop $sublist $sub}-->
  16.                                 <li>
  17.                                         <a href="forum.php?mod=forumdisplay&fid={$sub[fid]}">{$sub['name']}</a>
  18.                                 </li>
  19.                                 <!--{/loop}-->
  20.                                 </ul>
  21.                         </div>
  22.                         <!--{else}-->
  23.                         <span class="name">
  24.                                 <!--{eval echo strip_tags($_G['forum']['name']) ? strip_tags($_G['forum']['name']) : $_G['forum']['name'];}-->        <img src="{STATICURL}image/mobile/images/icon_arrow_down.png">
  25.                         </span>
  26.                         <!--{/if}-->
  27.                 </span>
  28.     </div>
  29. </header>
  30. <!-- header end -->

  31. <!--{hook/forumdisplay_top_mobile}-->
  32. <!-- main threadlist start -->
  33. <!--{if !$subforumonly}-->
  34. <div class="threadlist">
  35.              <ul>
  36.                  <!--{if $_G[forum][icon] && !$subforumonly}--><img src="data/attachment/common/$_G[forum][icon]" alt="$_G['forum'][name]" /><!--{/if}-->
  37.         </ul>
  38. </div>
  39. $multipage
  40. <!--{/if}-->
  41. <!-- main threadlist end -->
  42. <!--{hook/forumdisplay_bottom_mobile}-->
  43. <div class="pullrefresh" style="display:none;"></div>


  44. <!--{template common/footer}-->
复制代码

discuz!主题列表页显示每个帖子的版块名
如何让discuz!主题列表页显示每个帖子的版块名?很多同学可能不解,为什么要这么做?当我在A版块时这些帖子当然都属于A版块了,这个一看就知道了,何必加这一项?其实不然,至少全局置顶的帖子就看不出属于哪个版块,更重要的是这么做有利于SEO,可以增加各个版块的权重。
下面以discuz! x2.5为例讲解如何让discuz!主题列表页显示每个帖子的版块名,此方法不适用其它版本的discuz!
1.打开source/module/forum/forum_forumdisplay.php文件,找到第743行$threadids[$threadindex] = $thread['tid']; 。在下面添加如下代码
  1. //获得帖子栏目名
  2. $cur_forum = C::t(‘forum_forum’)->fetch_info_by_fid($thread['fid']);
  3. $thread['name'] = $cur_forum['name'];
复制代码
2.打开template/default/forum/forumdisplay_list.htm文件,这个主题列表页的模板文件,需要修改的地方比较多,最主要的一修改在213行,此处的修改是为了显示帖子的版块名。在以下代码下方
  1. <!–{if CURMODULE == ‘guide’}–>
  2. <td><a href=”forum.php?mod=forumdisplay&fid=$thread[fid]” target=”_blank”>$forumnames[$thread[fid]]['name']</a></td>
  3. <!–{/if}–>
复制代码
加入
  1. <!–{if CURMODULE == ‘forumdisplay’}–>
  2. <td><a href=”forum.php?mod=forumdisplay&fid=$thread[fid]” target=”_blank”>$thread[name]</a></td>
  3. <!–{/if}–>
复制代码
其它的还有4处修改,都添加些<td></td>的,用天解决页面的样式的问题,我就不列出来了。

全部评论 0

您需要登录后才可以回帖 立即登录
输入你要评论的内容......
0
0
0
返回顶部