如何讓discuz!主題列表頁顯示每個帖子的版塊名?很多同學可能不解,為什么要這么做?當我在A版塊時這些帖子當然都屬于A版塊了,這個一看就知道了,何必加這一項?其實不然,至少全局置頂的帖子就看不出屬于哪個版塊,更重要的是這么做有利于SEO,可以增加各個版塊的權重。
下面以discuz! x2.5為例講解如何讓discuz!主題列表頁顯示每個帖子的版塊名,此方法不適用其它版本的discuz!
1.打開source/module/forum/forum_forumdisplay.php文件,找到第743行$threadids[$threadindex] = $thread['tid']; 。在下面添加如下代碼
//獲得帖子欄目名
$cur_forum = C::t(‘forum_forum’)->fetch_info_by_fid($thread['fid']);
$thread['name'] = $cur_forum['name'];
2.打開template/default/forum/forumdisplay_list.htm文件,這個主題列表頁的模板文件,需要修改的地方比較多,最主要的一修改在213行,此處的修改是為了顯示帖子的版塊名。在以下代碼下方
<!–{if CURMODULE == ‘guide’}–>
<td><a href=”forum.php?mod=forumdisplay&fid=$thread[fid]” target=”_blank”>$forumnames[$thread[fid]]['name']</a></td>
<!–{/if}–>
加入
<!–{if CURMODULE == ‘forumdisplay’}–>
<td><a href=”forum.php?mod=forumdisplay&fid=$thread[fid]” target=”_blank”>$thread[name]</a></td>
<!–{/if}–>
其它的還有4處修改,都添加些<td></td>的,用天解決頁面的樣式的問題,我就不列出來了。