织梦DedeCms默认情况下,会员发布的未审核文档是可以通过动态方式进行浏览的(/plus/view.php?aid=xxx),用户投稿大量的垃圾文档而被收录造成站点权限下降; 给站长/管理员的日常管理维护带有极大不便
而织梦Dedecms系统默认的这种方式,无疑会带来很多的细小问题,比如:
1、用户投稿大量的垃圾文档而被收录造成站点权限下降;
2、给站长/管理员的日常管理维护带有极大不便;
3、给前台用户带来不好的访问体验;
4、其它一些想象不到的情况等;
我们可以通过对代码的修改,实现以下效果:当用户投稿文档为待审核状态时,只有投稿用户或管理员才能查看,其它的用户均无法查看。
1)修改方法
编辑打开/plus/view.php文件(注:这个文件是文档的动态浏览文件),找到如下代码:
//检查阅读权限
$needMoney = $arc->Fields['money']; $needRank = $arc->Fields['arcrank'];
在下面一行加入以下代码:
代码如下:
$mid = $arc->Fields['mid'];
if(($cfg_ml->M_Rank < 1 || $mid <> $cfg_ml->M_ID) && $needRank == -1){ showMsg("你无查看权限",-1);
exit(); }
保存关闭即可。
2)效果预览
3)效果解释
通过上面的修改以后,我们可以实现以下效果:当用户投稿文档为待审核状态时,只有投稿用户或管理员才能查看,其它的用户均无法查看。