quanshiyinian 发表于 2014-12-13 19:41:59

discuz X3.1门户列表页非DIY调用最新文章和热门内容教程

最近在 用discuz X3.1做网站的时候,陆续的发现了discuz的功能不多,但是深入了解下的话,很多功能还是能够实现的,以前一直喜欢用DIY功能来制作和修改风格,但是由于在discuz DIY的时候,产生的DIV层太多,为了优化代码,减少多余的DIV层(discuz X3 外部调用/内部调用图文教程 ),能够实现自动调用最新文章和热门内容,今天在道勤网和大家分享下具体的方法。

在template/default/porta文件夹下有三个文件:list.htm、list_category_onerank.htm、list_category_tworanks.htm,这三个文件就是discuz门户文章列表页,第一个是默认的列表页,第二个是单列列表页,第三个是两列列表页。

其中list_category_tworanks.htm自动调用文章的最新文章和热门文章,但是样式太难看,而且无法显示分页,list.htm可以实现分页,但是却无法调用最新文章和热门内容(你肯定想到了,把list_category_tworanks.htm文件内调用最新文章和热门内容的代码复制到list.htm中不就OK了吗,我也是这么想的,没成功)。

为了让 list.htm实现自动调用最新文章和热门内容,方法如下:

1、将list.htm页头文件,第5行下面增加如下一段代码
<!--{eval $list = category_get_list($cat, $wheresql, $page);}-->
2、将list_category_tworanks.htm调用最新文章和热门内容的代码(如下)复制到第74行<div class="sd pph">这行代码的下面
<!--{if $data['portalnewarticle']}-->
      <div class="bm">
            <div class="bm_h cl">{lang article_last}</div>
            <div class="bm_c">
                <ul class="xl xl1">
                  <!--{loop $data['portalnewarticle'] $value}-->
                        <!--{eval $article_url = fetch_article_url($value);}-->
                        <li><a href="$article_url">$value</a></li>
                  <!--{/loop}-->
                </ul>
            </div>
      </div>
<!--{/if}-->
<!--{if $data['portalhotarticle']}-->
      <div class="bm">
            <div class="bm_h cl">{lang article_hot}</div>
            <div class="bm_c">
                <ul class="xl xl1">
                  <!--{loop $data['portalhotarticle'] $value}-->
                        <!--{eval $article_url = fetch_article_url($value);}-->
                        <li><a href="$article_url">$value</a></li>
                  <!--{/loop}-->
                </ul>
            </div>
      </div>
<!--{/if}-->
3、门户—分类名称—编辑——列表页模板名,更换为你我们修改好的模版,然后去看下效果就OK了

页: [1]
查看完整版本: discuz X3.1门户列表页非DIY调用最新文章和热门内容教程