搜索

昨天闲得没事,就去重构了整个discuz.htm的文件。但是,

并没有这么顺利,于是去了空间吐槽了一波。

最神奇地就是,早上打开本地,tab切换突然活了,思索了一下,大概是存缓的问题了吧。

终于是实现了波,无刷新切换版块,也改变了dz传统的布局

其实我做这个不是第一个,我所知道的是雨伦,昨晚还好有他的帮忙,参考了他写的教程,少走了一些弯路(233,一开始想全部自己调用数据库,然后死在$forum[icon]判断有无http的问题上,我写好正则,但是htm就认为是未知量。。大概是重新赋值错了吧。为了不在折腾,于是就只能害羞地用原变量了)

教程链接          传送门走起

/需要再解决的问题/

如果版块再多点,加载还是有问题(慢),于是应该采用下ajax或者pjax吧。

 

笔记/

<!--{loop $catlist $key $cat}-->

是循环分区的

<!--{loop $cat[forums] $forumid}-->

是循环分区下版块的

<ul class="grouplist clearfix hobbyList">
<!--{loop $catlist $key $cat}-->
<!--{hook/index_catlist $cat[fid]}-->
<!--{loop $cat[forums] $forumid}-->
<!--{eval $forum=$forumlist[$forumid];}-->
<!--{eval $forumurl = !empty($forum['domain']) && !empty($_G['setting']['domain']['root']['forum']) ? 'http://'.$forum['domain'].'.'.$_G['setting']['domain']['root']['forum'] : 'forum.php?mod=forumdisplay&amp;fid='.$forum['fid'];}-->
<li class="gb-list-item">

</li>
<!--{/loop}-->
<!--{/loop}-->
</ul>

你看,直接把分区和版块一起循环,会显示,分区找不到所固定的样式,只能把全部输出

而要体现其他分区下的版块

则要

<!--{loop $catlist $key $cat}-->
<div  class="bd" style="display:none;">
<!--{loop $cat[forums] $forumid}-->
<!--{eval $forum=$forumlist[$forumid];}-->
<!--{eval $forumurl = !empty($forum['domain']) && !empty($_G['setting']['domain']['root']['forum']) ? 'http://'.$forum['domain'].'.'.$_G['setting']['domain']['root']['forum'] : 'forum.php?mod=forumdisplay&amp;fid='.$forum['fid'];}-->
<ul class="grouplist clearfix hobbyList">
<li class="gb-list-item">

</li>
</ul>
<!--{/loop}-->
</div>


这里体现了区别,就是 包在了

的外面,正如上文所讲,现在分区找到了框架了,那么他就只能先把独立的显示出来

版权属于:染念
作品采用:本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。
0
查看目录

目录

来自 《Discuz实现tab切换版块》
评论

  1. 评论头像
    2018-05-10 回复

    Discuz是个成熟的软件,资料有很多,让我们少走弯路

    1. 评论头像
      @葛一速 染念
      2018-05-12 回复

博主很懒,啥都没有