要让未登录会员只能查看文章的一部分,这里需要修改dedecms本身的文件,修改后,你会发现上面有两个全局变量 $cfg_ckbodyopen 和 $cfg_ckbodynum ,你可以在后台系统设置里面增加这两个系统变量,以便控制改代码是否生效, $cfg_ckbodyopen 是Y表示启用,其他任何字符都不使用,默认打开使用。 $cfg_ckbodynum 是未登陆的来客显示显示文章的字数,默认500字符,即250个中文字符。 还有,上面的<div 和 </div>之间的是没有登陆时打开文章显示在文章下面的,可以自行修改,但是注意,修改的时候不要用双引号,当然你会加上转义符的除外。 打开include\arc.archives.class.php文件 找到“//End foreach” 在下面加上 Quote: global $cfg_ckbodyopen,$cfg_ckbodynum; $this->Fields['$cfg_ckbodyopen'] = (empty($cfg_ckbodyopen) ? "Y" : "$cfg_ckbodyopen" ); $this->Fields['$cfg_ckbodynum'] = (empty($cfg_ckbodynum) ? "500" : "$cfg_ckbodynum" ); if(($this->Fields['$cfg_ckbodyopen'] == "Y" || $this->Fields['$cfg_ckbodyopen'] == "y") && $this->Fields['ismake']==-1){ require_once(DEDEINC.'/memberlogin.class.php'); $this->MemberLogin = new MemberLogin(); $this->Fields['ckbodyhtml'] = " <br /> <div class='ckbodyhtml' style='width:80%;margin-left:10%;margin-top:30px;float:left;border:1px solid #000;background:#dedede;text-align:center;'> 你没有登陆,无法阅读全文内容,点击此处登陆 </div>"; if($this->MemberLogin->IsLogin()){ $this->Fields['ckbody'] = $this->Fields['body']; //已经登陆 }else{ $this->Fields['ckbody'] = cn_substr(Html2Text($this->Fields['body']),$this->Fields['$cfg_ckbodynum']); $this->Fields['ckbody'] .= $this->Fields['ckbodyhtml']; //未登陆 } }else{ $this->Fields['ckbody'] = $this->Fields['body'];
}
还有 在 //php5构造函数 前面加上 Quote: var $MemberLogin;
到此就可以了,在模板用{dede:field.ckbody/} 代替原来的{dede:field.body/}。
|
完整源码网-ym0.cc 织梦教程 dedecms模板未登录会员只能查看文章的一部分_ https://ym0.cc/658.html


常见问题
相关文章
猜你喜欢
- dedecms在首页调用会员信息(会员头像和名字等)_ 2020-06-08
- 织梦cms系统TAG标签和分页伪静态设置教程_ 2020-06-08
- 织梦图集 上传图片小于设定尺寸 缩略图生成失败的解决办法_ 2020-06-08
- 织梦dedecms文章被评论后发短消息给作者的方法_ 2020-06-08
- dedecms 首页arclist按照’weight’排序_ 2020-06-08
- 织梦DedeCMS获取文章链接的函数GetOneArchive使用方法_ 2020-06-08
- dedecms织梦TAG标签显示单个标签共有多少篇文章的方法_ 2020-06-08
- 织梦导航不显示外部链接栏目,修改channelartlist标签方法_ 2020-06-08
- 织梦dedecms wap手机门户站点首页不更新的解决方法_ 2020-06-08
- dede搜索结果页支持article、sql、channelartlist 等标签_ 2020-06-08