有个网站是用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关于新建模块的二次开发就结束了,只要仿照这来就行了
创造与魔法 安卓版v1.0.0750
创造与魔法是一款开放世界手游,在游戏中玩家可探索这个奇妙的世
创造与魔法修改版 最新版v1.0.0750
创造与魔法无限点券版是款探索冒险游戏,该款游戏的操作还是蛮自
战争与文明官方版本 安卓版v1.7.16
战争与文明是一款由上海邮通科技有限公司开发的战争策略游戏,这
迷你世界0元领皮肤无限迷你币版 最新安卓版v1.43.0
迷你世界0元购买皮肤版是这款开放沙盒冒险建造游戏的特殊破解版
创造与魔法无限经验版 安卓版v1.0.0750
创造与魔法无限经验版是款可以改造环境,整个游戏的自由度还是蛮