欢迎您光临买源码,本站秉承服务宗旨 履行“站长”责任,销售只是起点,服务永无止境!

tp5轻松实现上一篇下一篇

在做一个项目,涉及到了上一篇下一篇这样的小功能,网上肯定有类似的功能块吧,巴拉巴拉没找到,竟是一些麻烦的,没办法自己写,分享给大家。

首先有一些事情要说明关于上一篇下一篇所属栏目的问题,现在有三个栏目,顶级栏目1和两个二级栏目2和二级栏目3,他们都是可以发布文章的,但是顶级栏目点击显示的时候通常也会显示子栏目里面的内容,所以就有了两种情况。第一种情况,你是从二级栏目里面直接访问一篇文章的,那对应该文章的上一篇和下一篇肯定都要从当前栏目里面找,没有就提示找不到。情况2:如果你是从顶级栏目访问的文章,那么上一篇下一篇的时候我认为不能单从这个文章所属的栏目里面找,而是从这三个栏目里面找,当然如果你觉得麻烦也可以只找当前文章所属栏目里面的文章。

下面是我的方法:

写在类里面的方法:

public function index($aid)

    {

    	$arts=db('article')->find($aid);//当前文章所有信息

    	$cid=$arts['cate_id'];//当前栏目id

    	$soncids=model('cate')->getChildIds($cid);//这个方法是自己写的,根据当前栏目的id查找所有子栏目的id

    	$soncids[]=intval($cid);//获取包含当前栏目在内的子栏目的id数组

    	$prev=db('article')->where('cate_id','in',$soncids)->where('id','<',$aid)->limit(1)->find();//上一篇文章

    	$next=db('article')->where('cate_id','in',$soncids)->where('id','>',$aid)->limit(1)->find();//下一篇文章

    	$this->assign([

    		'arts'=>$arts,

    		'prev'=>$prev,

    		'next'=>$next,

    		]);

        return view('newsdetail');

    }

模板层的应用:

<div class="pagination2 row">

    <div class="prev col-lg-6 col-md-12 col-sm-12 clo-xs-12">

        {if condition="$prev"}

        <a href="{:url('Article/index',array('aid'=>$prev['id']))}">上一篇:{$prev.title}</a>

        {else /}

        上一篇:暂时没有了~

        {/if}

    </div>

    <div class="next col-lg-6 col-md-12 col-sm-12 clo-xs-12">

        {if condition="$next"}

        <a href="{:url('Article/index',array('aid'=>$next['id']))}">下一篇:{$next.title}</a>

        {else /}

        下一篇:暂时没有了~

        {/if}

    </div>

</div>

 

免责声明:
本站提供的一切软件、教程和内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络收集整理,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。如果您喜欢该程序和内容,请支持正版,购买注册,得到更好的正版服务。我们非常重视版权问题,如有侵权请邮件与我们联系处理。敬请谅解!

买源码 » tp5轻松实现上一篇下一篇

发表评论