ecshop文章增加点击次数显示,一般的CMS都的文章系统都有点击次数,而ecshop的各个版本都没有这个功能,增加这个功能比较简单,现在ecshop模板堂来一步一步的实现这个功能,以使ecshop的文章的功能更专业一点。
第一步:为ecshop的文章表增加一个字段click_count以存储文章的点击次数浏览次数,如何为文章表增加击点击次数,可以直接在你的ecshop网店后台--->数据库管理--->sql查询执行一条SQL语句:
代码如下
1. ALTER TABLE ecs_article ADD COLUMN click_count INT(10) DEFAULT 0;
注意表句ecs_article中的表前缀可能随着你的ecshop安装时的设置不同而不同,如果你的表前缀是shop_请把sql句语中的ecs_换成shop_,否则sql语句将执行不成功.
第二步:修改article.php,浏览文章时增加点击次数数值:
代码如下
1. $prev_aid = $db->getOne("SELECT max(article_id) FROM " . $ecs->table('article') . " WHERE article_id < $article_id AND cat_id=$article[cat_id] AND is_open=1");
2. if (!empty($prev_aid))
3. {
4. $prev_article = $db->getRow("SELECT article_id, title FROM " .$ecs->table('article'). " WHERE article_id = $prev_aid");
5. $prev_article['url'] = build_uri('article', array('aid'=>$prev_article['article_id']),$prev_article['title']);
6. $smarty->assign('prev_article', $prev_article);
7. }
8.
9. assign_dynamic('article');
10. }
11.
12. /* 更新点击次数 */
13. $db->query('UPDATE ' . $ecs->table('article') . " SET click_count = click_count + 1 WHERE article_id = '$article_id'");
14.
15. if(isset($article) && $article['cat_id'] > 2)
16. {
17. $smarty->display('article.dwt', $cache_id);
18. }
19. else
20. {
21. $smarty->display('article_pro.dwt', $cache_id);
22. }
23.
如代码所示红色行是新增加的
第三步:修改article.dwt把文章的点击次数显示出来
代码如下
1. <font class="f3">{$article.author|escape:html} / {$article.add_time}/{$article.click_count}</font>
其中{$article.click_count}代表的文章点击次数