diff --git a/app/admin/controller/Forum.php b/app/admin/controller/Forum.php index c9e3730..2a6bf15 100644 --- a/app/admin/controller/Forum.php +++ b/app/admin/controller/Forum.php @@ -147,7 +147,7 @@ class Forum extends AdminController $res['count']= count($list); $res['data'] = []; foreach($list as $k=>$v){ - $res['data'][] = ['id' => $v['id'],'tags'=>$v['catename'],'sort'=>$v['sort'],'ename'=>$v['ename']]; + $res['data'][] = ['sort'=>$v['sort'],'id' => $v['id'],'tags'=>$v['catename'],'ename'=>$v['ename'],'desc'=>$v['desc']]; } } return json($res); @@ -160,8 +160,7 @@ class Forum extends AdminController { if(Request::isAjax()){ $data = Request::param(); - //halt($data); - $list = Db::name('cate')->save($data); + $list = Db::name('cate')->cache('catename')->save($data); if($list){ return json(['code'=>0,'msg'=>'添加分类成功']); @@ -178,8 +177,7 @@ class Forum extends AdminController { if(Request::isAjax()){ $data = Request::param(); - //halt($data); - $list = Db::name('cate')->where('id',$data['id'])->save($data); + $list = Db::name('cate')->cache('catename')->update($data); if($list){ return json(['code'=>0,'msg'=>'修改分类成功']); @@ -201,6 +199,7 @@ class Forum extends AdminController if($result == 1){ + Cache::tag('catename')->clear(); return json(['code'=>0,'msg'=>'删除分类成功']); }else{ return json(['code'=>-1,'msg'=>'删除分类失败']); diff --git a/app/admin/controller/Set.php b/app/admin/controller/Set.php index 215c3d8..38d3653 100644 --- a/app/admin/controller/Set.php +++ b/app/admin/controller/Set.php @@ -30,7 +30,7 @@ class Set extends AdminController unset($data['file']); //$system = System::find(1); //$result = $system->allowField(['webname','webtitle','domain','keywords','descript','copyright','blackname'])->save($data); - $result = Db::name('system')->cache(true)->where('id', 1)->update($data); + $result = Db::name('system')->cache('system')->where('id', 1)->update($data); if($result){ return json(['code'=>0,'msg'=>'更新成功']); } else { diff --git a/app/common.php b/app/common.php index 76c34f0..1a3b343 100644 --- a/app/common.php +++ b/app/common.php @@ -52,7 +52,7 @@ try { //根据user area_id查询区域简称 function getAsing($area_id){ - return Db::name('user_area')->where('id',$area_id)->value('asing'); + return Db::name('user_area')->where('id',$area_id)->cache(3600)->value('asing'); } //根据用户主键ID,查询用户名称 @@ -74,11 +74,17 @@ if(!function_exists('getUserImg')) //根据文章分类ID查询分类名 -function getCateName($cate_ename) +function getCateName($ename) { - return Db::name('cate')->where('ename',$cate_ename)->value('catename'); + + return Db::name('cate')->where('ename',$ename)->cache(3600)->value('catename'); } +//根据文章分类ID查询分类描述 +function getCateDesc($ename) + { + return Db::name('cate')->where('ename',$ename)->cache(3600)->value('desc'); + } //过滤文章摘要 function getArtContent($content) diff --git a/app/common/controller/BaseController.php b/app/common/controller/BaseController.php index 12df70d..96bf726 100644 --- a/app/common/controller/BaseController.php +++ b/app/common/controller/BaseController.php @@ -226,7 +226,7 @@ abstract class BaseController protected function showNav() { //1.查询分类表获取所有分类 - $cateList = Db::name('cate')->where(['status'=>1,'delete_time'=>0])->order('sort','asc')->cache(3600)->select(); + $cateList = Db::name('cate')->where(['status'=>1,'delete_time'=>0])->order('sort','asc')->cache('catename',3600)->select(); //2.将catelist变量赋给模板 公共模板nav.html View::assign('cateList',$cateList); @@ -237,7 +237,7 @@ abstract class BaseController protected function showUser() { //1.查询用户 - $user = Db::name('user')->field('id,name,nickname,user_img,sex,auth,city,email,sign,point')->where('id',Session::get('user_id'))->cache(120)->find(); + $user = Db::name('user')->field('id,name,nickname,user_img,sex,auth,city,email,sign,point')->where('id',Session::get('user_id'))->cache(true)->find(); //2.将User变量赋给模板 公共模板nav.html View::assign('user',$user); } @@ -246,7 +246,7 @@ abstract class BaseController protected function showSystem() { //1.查询分类表获取所有分类 - $sysInfo = Db::name('system')->cache(3600)->find(1); + $sysInfo = Db::name('system')->cache('system',3600)->find(1); View::assign('sysInfo',$sysInfo); } diff --git a/app/index/controller/Article.php b/app/index/controller/Article.php index 8f00796..51e1cce 100644 --- a/app/index/controller/Article.php +++ b/app/index/controller/Article.php @@ -26,14 +26,17 @@ class Article extends BaseController $where =[]; //获取分类ID $ename = Request::param('ename'); + $type = Request::param('type'); $cate = Db::name('cate')->where('ename',$ename)->find(); - $types = input('type'); + if($cate){ $where = ['cate_id' => $cate['id']]; - }else{ - $where = true; } - switch ($types) { + + $artList = Cache::get('arts'.$cate['id'].$type); + + if(!$artList){ + switch ($type) { //查询文章,15个分1页 case 'all': $artList = ArticleModel::field('id,title,cate_id,user_id,create_time,is_top,is_hot')->with([ @@ -79,8 +82,11 @@ class Article extends BaseController ])->withCount(['comments'])->where('status',1)->where($where)->order(['is_top'=>'desc','create_time'=>'desc'])->withCache(30)->paginate(15); break; + } + Cache::set('arts'.$cate['id'].$type,$artList,600); } + // 热议文章 $artHot = ArticleModel::field('id,title')->withCount('comments')->where('status',1)->whereTime('create_time', 'year')->order('comments_count','desc')->limit(10)->select(); //分类右栏广告 @@ -88,7 +94,7 @@ class Article extends BaseController //通用右栏 $ad_comm = Db::name('slider')->where('slid_status',1)->where('delete_time',0)->where('slid_type',2)->whereTime('slid_over','>=',time())->select(); - View::assign(['type'=>$types,'artList'=>$artList,'artHot'=>$artHot,'ad_cate'=>$ad_cate,'ad_comm'=>$ad_comm]); + View::assign(['type'=>$type,'artList'=>$artList,'artHot'=>$artHot,'ad_cate'=>$ad_cate,'ad_comm'=>$ad_comm]); return View::fetch(); } @@ -110,6 +116,7 @@ class Article extends BaseController } $comments = $article->comments()->where('status',1)->select(); $article->inc('pv')->update(); + $pv = Db::name('article')->field('pv')->where('id',$id)->value('pv'); /* $nt = time(); @@ -133,7 +140,7 @@ class Article extends BaseController //通用右栏 $ad_comm = Db::name('slider')->where('slid_status',1)->where('delete_time',0)->where('slid_type',2)->whereTime('slid_over','>=',time())->select(); - View::assign(['article'=>$article,'comments'=>$comments,'artHot'=>$artHot,'ad_art'=>$ad_article,'ad_comm'=>$ad_comm]); + View::assign(['article'=>$article,'pv'=>$pv,'comments'=>$comments,'artHot'=>$artHot,'ad_art'=>$ad_article,'ad_comm'=>$ad_comm]); return View::fetch(); } diff --git a/app/install/data/taoler.sql b/app/install/data/taoler.sql index 1a35895..d0f24cb 100644 --- a/app/install/data/taoler.sql +++ b/app/install/data/taoler.sql @@ -169,19 +169,17 @@ CREATE TABLE `tao_cate` ( `sort` int(11) NOT NULL DEFAULT '0' COMMENT '排序', `status` enum('0','1') NOT NULL DEFAULT '1' COMMENT '状态1启用0禁用', `type` tinyint(1) NOT NULL DEFAULT '0' COMMENT '0帖子1文章', + `desc` varchar(255) NOT NULL, + `is_hot` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '是否是热点', `create_time` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间', `updata_time` int(11) NOT NULL DEFAULT '0' COMMENT '更新时间', `delete_time` int(11) NOT NULL DEFAULT '0' COMMENT '删除时间', PRIMARY KEY (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=9 DEFAULT CHARSET=utf8; -INSERT INTO `tao_cate` VALUES ('1', '提问', 'ask', '1', '1', '0', '0', '0', '0'); -INSERT INTO `tao_cate` VALUES ('2', '分享', 'share', '2', '1', '0', '0', '0', '0'); -INSERT INTO `tao_cate` VALUES ('3', '讨论', 'talk', '3', '1', '0', '0', '0', '0'); -INSERT INTO `tao_cate` VALUES ('4', '新闻', 'news', '5', '1', '0', '0', '0', '0'); -INSERT INTO `tao_cate` VALUES ('5', '咸鱼', 'fish', '7', '1', '0', '0', '0', '0'); -INSERT INTO `tao_cate` VALUES ('6', '求助', 'help', '6', '1', '0', '0', '0', '0'); -INSERT INTO `tao_cate` VALUES ('7', '工作', 'work', '5', '1', '0', '0', '0', '1571231165'); +INSERT INTO `tao_cate` VALUES ('1', '提问', 'ask', '1', '1', '0', 'TaoLer社区提问专栏1', '0', '0', '0', '0'); +INSERT INTO `tao_cate` VALUES ('2', '分享', 'share', '2', '1', '0', '', '0', '0', '0', '0'); +INSERT INTO `tao_cate` VALUES ('3', '讨论', 'talk', '3', '1', '0', '', '1', '0', '0', '0'); DROP TABLE IF EXISTS `tao_collection`; diff --git a/public/static/admin/modules/contlist.js b/public/static/admin/modules/contlist.js index 2ec621e..dc218e6 100644 --- a/public/static/admin/modules/contlist.js +++ b/public/static/admin/modules/contlist.js @@ -81,13 +81,13 @@ layui.define(['table', 'form'], function(exports){ elem: '#LAY-app-content-tags' ,url: '/admin/Forum/tags' //模拟接口 ,cols: [[ - {type: 'numbers', fixed: 'left'} - ,{field: 'sort', title: '排序', width: 100, sort: true} - ,{field: 'id', title: 'ID',minWidth: 30} - ,{field: 'tags', title: '分类名', minWidth: 100} + {type: 'numbers', fixed: 'left'} + ,{field: 'sort', title: '排序', width: 80, sort: true} + ,{field: 'id', title: 'ID',Width: 50} + ,{field: 'tags', title: '分类名', minWidth: 100} ,{field: 'ename', title: 'EN别名', minWidth: 100} - - ,{title: '操作', width: 150, align: 'center', fixed: 'right', toolbar: '#layuiadmin-app-cont-tagsbar'} + ,{field: 'desc', title: '描述', minWidth: 100} + ,{title: '操作', width: 150, align: 'center', fixed: 'right', toolbar: '#layuiadmin-app-cont-tagsbar'} ]] ,text: '对不起,加载出现异常!' }); @@ -134,16 +134,17 @@ layui.define(['table', 'form'], function(exports){ ,yes: function(index, layero){ //获取iframe元素的值 var othis = layero.find('iframe').contents().find("#layuiadmin-app-form-tags") + ,sort = othis.find('input[name="sort"]').val() ,tags = othis.find('input[name="tags"]').val() - ,ename = othis.find('input[name="ename"]').val() - ,sort = othis.find('input[name="sort"]').val(); + ,ename = othis.find('input[name="ename"]').val() + ,desc = othis.find('input[name="desc"]').val(); if(!tags.replace(/\s/g, '')) return; $.ajax({ type:"post", url:"/admin/Forum/tagsform", - data:{"id":data.id,"catename":tags,"sort":sort,"ename":ename}, + data:{"id":data.id,"sort":sort,"catename":tags,"ename":ename,"desc":desc}, daType:"json", success:function (data){ if (data.code == 0) { @@ -175,9 +176,10 @@ layui.define(['table', 'form'], function(exports){ ,success: function(layero, index){ //给iframe元素赋值 var othis = layero.find('iframe').contents().find("#layuiadmin-app-form-tags").click(); - othis.find('input[name="tags"]').val(data.tags) - ,othis.find('input[name="ename"]').val(data.ename) - ,othis.find('input[name="sort"]').val(data.sort); + othis.find('input[name="sort"]').val(data.sort) + ,othis.find('input[name="tags"]').val(data.tags) + ,othis.find('input[name="ename"]').val(data.ename) + ,othis.find('input[name="desc"]').val(data.desc); } }); } diff --git a/view/admin/forum/tags.html b/view/admin/forum/tags.html index 58b400b..6b5930e 100644 --- a/view/admin/forum/tags.html +++ b/view/admin/forum/tags.html @@ -37,16 +37,17 @@ ,btn: ['确定', '取消'] ,yes: function(index, layero){ var othis = layero.find('iframe').contents().find("#layuiadmin-app-form-tags") + ,sort = othis.find('input[name="sort"]').val() ,tags = othis.find('input[name="tags"]').val() - ,sort = othis.find('input[name="sort"]').val() - ,ename = othis.find('input[name="ename"]').val(); + ,ename = othis.find('input[name="ename"]').val() + ,desc = othis.find('input[name="desc"]').val(); if(!tags.replace(/\s/g, '')) return; - $.ajax({ + $.ajax({ type:"post", url:"{:url('admin/Forum/addtags')}", - data:{"catename":tags,"sort":sort,"ename":ename}, + data:{"sort":sort,"catename":tags,"ename":ename,"desc":desc}, daType:"json", success:function (data){ if (data.code == 0) { diff --git a/view/admin/forum/tagsform.html b/view/admin/forum/tagsform.html index 0e6e287..f3bf31a 100644 --- a/view/admin/forum/tagsform.html +++ b/view/admin/forum/tagsform.html @@ -6,13 +6,17 @@
- +
- +
- + +
+ +
+
diff --git a/view/index/article/cate.html b/view/index/article/cate.html index 6e21fa1..d455c62 100644 --- a/view/index/article/cate.html +++ b/view/index/article/cate.html @@ -1,7 +1,8 @@ {extend name="public/base" /} -{block name="title"}{$Request.param.ename|getCateName} - {$sysInfo.webname}-帖子列表{/block} - +{block name="title"}{$Request.param.ename|getCateName}-{$sysInfo.webname}{/block} +{block name="keywords"}{$Request.param.ename|getCateName},{$sysInfo.webname}{/block} +{block name="description"}{$Request.param.ename|getCateDesc}{/block} {block name="column"}{include file="/public/column" /}{/block} {block name="content"} @@ -15,7 +16,7 @@ {volist name="artList" id="art"}
  • - {$art.user_id|getUserName} + {$art.user.name}

    {$art.cate.catename} @@ -92,6 +93,7 @@

  • + {/block} {block name="script"}