时间:2019-09-14 09:00:01 来源:admin 作者:猎凡网络
大部分的cms都有文章点击次数的功能,不知道ecshop当时为什么没考虑把这个功能加进去,现在ec已经被商派购买,新增功能基本无望了,今天给大家讲解一下仿站正常需要的文章点击次数增加。
首先第一步执行后台的sql语句来增加一个字段,执行下面的这条SQL语句
ALTER TABLE ecs_article ADD COLUMN click_count INT(10) DEFAULT 0;
然后打开文章详情的核心文件article.php,找到如下代码
if(isset($article) && $article['cat_id'] > 2) { $smarty->display('article.dwt', $cache_id); } else { $smarty->display('article_pro.dwt', $cache_id); }
将这段代码修改为
$db->query('UPDATE ' . $ecs->table('article') . " SET click_count = click_count + 1 WHERE article_id = '$article_id'");if(isset($article) && $article['cat_id'] > 2) { $smarty->display('article.dwt', $cache_id); } else { $smarty->display('article_pro.dwt', $cache_id); }
可以看出我们设置了一个click_count变量给他赋值为点击次数,但是这个时候并没实现刷新加1,我们继续打开这个文件includes/lib_insert.php,在这个文件的结尾处加上如下代码
function insert_article_count($arr) { $click_count=$GLOBALS['db']->getOne('SELECT click_count FROM '. $GLOBALS['ecs']->table('article')."WHERE article_id='$arr[id]'"); return $click_count; }
这时候就实现了刷新加1次,类似织梦仿站的点击数。这时候功能已经实现了,我们来到文章模板article.dwt中,将如下代码放进需要显示点击数的地方就可以了
{insert name="article_count" id=$article.article_id}
就是这个标签,可以随意在前面增加他的样式。但是我们想要在后台进行管理这个点击次数还没有实现,继续二次开发,打开/languages/zh_cn/admin/article.php,在最后添加如下代码
$_LANG['click_count'] = '点击数';
这句代码的意思是在文章编辑的这个php文件中获取刚才我们设置的点击数字段,修改好后我们再来修改后台编辑文章的模板文件/admin/templates/article_list.htm,找到如下代码
var frm = document.forms['listForm'];
在这句代码的后面增加
elseif ($_REQUEST['act'] == 'edit_click_count') { check_authz_json('article_manage'); $id = intval($_POST['id']); $click_count = json_str_iconv(trim($_POST['val'])); if ($exc->edit("click_count = '$click_count'", $id)) { clear_cache_files(); admin_log($click_count, 'edit', 'article'); make_json_result(stripslashes($click_count)); } else { make_json_error($db->error()); } }
这样在后台编辑文章的同时就可以编辑点击数了。
本文网址:https://fangzhan.seobr.com/news/161.html
本文由猎凡仿站网发布,如果您还想了解更多关于网站仿制的文章,请点击查看
仿站知识
的其它文章,转发请注明来源及版权归属。
承接以下业务:传统网站改自适应网站、网站增加手机站、网站改全屏网站改大屏展示、GBK转UFT-8、DEDECMS转WORDPRESS、网站站群制作、企业网站设计、企业网站优化、网站托管等业务