thinkphp5项目--个人博客(六)

项目地址

fry404006308/personalBlog: personalBlog
https://github.com/fry404006308/personalBlog

一、频道推荐

控制器

 1 <?php
 2 namespace app\index\controller;
 3
 4 use app\index\controller\Base;
 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 app\index\controller;
 3
 4 use think\Controller;
 5 use think\Db;
 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}

三、公共部分的模块,方法写在公共控制器里面

thinkphp5项目--个人博客(六)相关推荐

  1. springboot实战项目——个人博客系统

    1.项目介绍 1.1项目效果 博客首页 登录功能 注册功能 文章分类 文章归档 文章页面 发布文章 (集成富文本编译器) 1.2项目使用技术 前端: vue element-ui 后端: Spring ...

  2. 项目体系架构设计——基于Spark平台的协同过滤实时电影推荐系统项目系列博客(四)

    系列文章目录 初识推荐系统--基于Spark平台的协同过滤实时电影推荐系统项目系列博客(一) 利用用户行为数据--基于Spark平台的协同过滤实时电影推荐系统项目系列博客(二) 项目主要效果展示--基 ...

  3. 利用用户行为数据——基于Spark平台的协同过滤实时电影推荐系统项目系列博客(二)

    系列文章目录 初识推荐系统--基于Spark平台的协同过滤实时电影推荐系统项目系列博客(一) 利用用户行为数据--基于Spark平台的协同过滤实时电影推荐系统项目系列博客(二) 项目主要效果展示--基 ...

  4. 基础环境搭建——基于Spark平台的协同过滤实时电影推荐系统项目系列博客(五)

    系列文章目录 初识推荐系统--基于Spark平台的协同过滤实时电影推荐系统项目系列博客(一) 利用用户行为数据--基于Spark平台的协同过滤实时电影推荐系统项目系列博客(二) 项目主要效果展示--基 ...

  5. SpringBoot实现代码生成器——基于SpringBoot和Vue的后台管理系统项目系列博客(十)

    系列文章目录 系统功能演示--基于SpringBoot和Vue的后台管理系统项目系列博客(一) Vue2安装并集成ElementUI--基于SpringBoot和Vue的后台管理系统项目系列博客(二) ...

  6. SpringBoot实现1对1、1对多、多对多关联查询——基于SpringBoot和Vue的后台管理系统项目系列博客(十八)

    系列文章目录 系统功能演示--基于SpringBoot和Vue的后台管理系统项目系列博客(一) Vue2安装并集成ElementUI--基于SpringBoot和Vue的后台管理系统项目系列博客(二) ...

  7. 实时推荐服务建设——基于Spark平台的协同过滤实时电影推荐系统项目系列博客(八)

    系列文章目录 初识推荐系统--基于Spark平台的协同过滤实时电影推荐系统项目系列博客(一) 利用用户行为数据--基于Spark平台的协同过滤实时电影推荐系统项目系列博客(二) 项目主要效果展示--基 ...

  8. 订单支付和评论——基于Django框架的天天生鲜电商网站项目系列博客(十五)

    系列文章目录 需求分析--基于Django框架的天天生鲜电商网站项目系列博客(一) 网站框架搭建--基于Django框架的天天生鲜电商网站项目系列博客(二) 用户注册模块--基于Django框架的天天 ...

  9. SpringBoot和Vue集成Markdown和多级评论——基于SpringBoot和Vue的后台管理系统项目系列博客(二十三)

    系列文章目录 系统功能演示--基于SpringBoot和Vue的后台管理系统项目系列博客(一) Vue2安装并集成ElementUI--基于SpringBoot和Vue的后台管理系统项目系列博客(二) ...

最新文章

  1. 《C#精彩实例教程》小组阅读12 -- C#面向对象技术高级应用
  2. laravel 调试模式及日志配置
  3. 大数据 -- zookeeper和kafka集群环境搭建
  4. Spring JDK动态代理
  5. Windows下架设Apache并支持ASP-Win+Apache+ASP
  6. solr(六): 集群
  7. 前端实现序列帧_Html5 序列帧动画
  8. python二维游戏编程 最强大脑游戏_看完《最强大脑》,我决定用Python做这个游戏...
  9. QMS-云质-质量管理软件-企业数字化质量管理解决方案
  10. oracle设置临时表空间,oracle操作临时表空间
  11. Android签名工具 AndroidMultitool使用方法
  12. SAP系统开发里程碑 2022 刘欣
  13. 点滴:日内交易规则参考
  14. 腾讯会议html代码,电脑端使用腾讯会议的加入会议步骤
  15. java.lang.ClassNotFoundException:如何解决
  16. 怎么获得华为手机的产品sn号码imei号
  17. 怎么看外文文献的影响因子_sci 上的论文影响因子怎么看
  18. hexo修改index.html,Hexo自定义页面做首页
  19. PostgreSQL官网下载
  20. 麦田厦门小区信息数据爬取

热门文章

  1. 传感器应用的demo自动录音器
  2. Android按比例布局之layout_weight和weightSum的使用
  3. Linux下对Verilog文件进行leda检错
  4. 读书笔记1 : program paradigm
  5. Python os.path模块的使用
  6. pandas之loc iloc ix
  7. Codeforces 976F
  8. 大家看看这个参数inctype你是否使用过?我做了以下测试,欢迎拍砖!
  9. Notepad++ 插件之 TextFX (安装及作用)
  10. SQL Server导入导出工具弱爆了