有个网站是用tipask来搭建的问答系统,今天客户要求添加热门问题模块,之前都是用tipask的原生模块,比如说推荐问答、未解决问答等,看来只能自己二次开发了,上网找了下关于tipask的二次开发还真是少……于是简单翻了下tipask的代码,用我的方式增加了热门问题模块。
tipask的主要函数都在model文件夹下,找到系统核心文件base.class.php,里面有这样一个函数fromcache,用于生成函数下各种模块,例如悬赏问题、精彩推荐等,我们要做的就是在这里按照前后代码加上一条我们需要的热门问题模块。
例如在代码
代码如下 | 复制代码 |
case 'notelist'://首页右侧公告列表 |
前加上我们的模块代码:
代码如下 | 复制代码 |
case 'hotlist'://热门问题 $this->load('hot');//www.111com.net $cachedata = $_ENV['hot']->get_list(); break; |
这里我是仿照recommend推荐模块,又新建的一个hot.class.php用于上面代码的调用,其实完全可以仿照上面的调用question.class.php文件里的list_by_condition函数,但是通过到question.class.php文件下查看list_by_condition函数只能够加入sql的where判断,而我需要的热门模块只需要改动一下order by,所以我只能新建一个hot.class.php文件自己写数据库调用了。
hot.class.php文件如下:
代码如下 | 复制代码 |
base = $base; $this->db = $base->db; } function get_list($start = 0, $limit = 7) { $hotlist = array(); $query = $this->db->query("SELECT * FROM " . DB_TABLEPRE . "question ORDER BY views DESC LIMIT $start,$limit");//WWw.111Cn.net while ($hot = $this->db->fetch_array($query)) { $hot['category_name'] = $this->base->category[$hot['cid']]['name']; $hot['format_time'] = tdate($hot['time']); $hot['category_name'] = $this->base->category[$hot['cid']]['name']; $hot['url'] = url('question/view/' . $hot['qid'], $hot['url']); $hot['image'] =$hot['image']?$hot['image']:'css/default/recomend.jpg' ; $hotlist[] = $hot; } return $hotlist; } } ?> |
好了,tipask关于新建模块的二次开发就结束了,只要仿照这来就行了
茶杯头甜蜜终章dlc 官方手机版v1.0.0.3
下载火柴人传说暗影格斗内置菜单 最新版v3.0.1
下载荒野乱斗测试服 安卓版v61.10.3
下载荒野乱斗彩虹服 安卓版v61.10.3
下载寒霜启示录 安卓版v1.25.10
寒霜启示录是一款生存模拟游戏,不少玩家可能对于末日都有着自己
末日城堡免广告版 安卓最新版v0.7.1
末日城堡免广告版是一款非常好玩的模拟经营类游戏,内部可以不看
甜蜜人生模拟器 最新版v1.4.5
甜蜜人生模拟器是一款非常好玩的模拟恋爱手游,玩家在这里能够对
武器锻造师内置功能菜单 v10.4
武器锻造师内置菜单版是游戏的破解版本,在该版本中为玩家提供了
开放空间overfield 安卓版v1.0.5
开放空间Overfield是一款箱庭养成经营手游,让你在广阔