thinkphp5项目--个人博客(六)
项目地址
fry404006308/personalBlog: personalBlog
https://github.com/fry404006308/personalBlog
一、频道推荐
控制器
1 <?php 2 namespace appindexcontroller; 3 4 use appindexcontrollerBase; 5 class Article extends Base 6 { 7 public function index() 8 { 9 $arid=input('arid'); 10 $articleres=db('article')->find($arid); 11 //访问一次这个方法,说明文章被访问一次,让文章的click字段值加1 12 db('article')->where('id','=',$arid)->setInc('click'); 13 $cateres=db('cate')->find($articleres['cateid']); 14 15 //推荐 16 $recres=db('article')->where(array('cateid'=>$cateres['id'],'state'=>1))->limit(8)->select(); 17 $this->assign(array( 18 'articleres'=>$articleres, 19 'cateres'=>$cateres, 20 'recres'=>$recres, 21 )); 22 23 24 return view(); 25 } 26 }
视图
1 <!--频道推荐--> 2 <div class="hotsnew"> 3 <div class="til"><h4>频道推荐</h4></div> 4 <ul> 5 {volist name='recres' id='value' } 6 <li> 7 <div class="tu"> 8 <a href='{:url('article/index',array('arid'=>$value.id))}' target="_blank"> 9 <img src="{if condition="$value['pic'] neq '' "}__IMG__{$value.pic} {else /}__PUBLIC__/images/error.png{/if} " alt="{$value.title}"/> 10 </a> 11 </div> 12 <p><a href='{:url('article/index',array('arid'=>$value.id))}'>{$value.title}</a></p> 13 </li> 14 {/volist} 15 16 </ul> 17 </div>
二、右侧的热门点击和推荐阅读
控制器,这里在Base控制器,因为右边这部分是公共部分
1 <?php 2 namespace appindexcontroller; 3 4 use thinkController; 5 use thinkDb; 6 class Base extends Controller 7 { 8 public function _initialize() 9 { 10 //得到栏目数据,并且分配 11 $cates = Db::name('cate')->order('id asc')->select(); 12 $this->assign('cates',$cates); 13 14 //执行处理右边的热门点击和推荐阅读 15 $this->right(); 16 } 17 18 //处理右边的热门点击和推荐阅读 19 public function right(){ 20 //热门点击 21 $clicks=db('article')->order('click desc')->limit(4)->select(); 22 //推荐 23 $recs=db('article')->where('state','=',1)->order('click desc')->limit(4)->select(); 24 $this->assign(array( 25 'clicks'=>$clicks, 26 'recs'=>$recs, 27 )); 28 } 29 30 }
视图
热门点击 {volist name='clicks' id='value'} <li class="hm-t-item hm-t-item-img"><a data-pos="0" title="{$value.title}" target="_blank" href="{:url('article/index',array('arid'=>$value['id']))}" class="hm-t-img-title" style="visibility: visible;"><span>{$value.title}</span></a></li> {/volist} 推荐阅读 {volist name='recs' id='value'} <li class="hm-t-item hm-t-item-img"><a style="visibility: visible;" class="hm-t-img-title" href="{:url('article/index',array('arid'=>$value['id']))}" target="_blank" title="{$value.title}" data-pos="0"><span>{$value.title}</span></a></li> {/volist}