织梦未登录会员只能阅读文章的一部分教程

要让未登录会员只能查看文章的一部分,这里需要修改dedecms本身的文件,修改后,你会发现上面有两个全局变量$cfg_ckbodyopen和$cfg_ckbodynum,你可以在后台系统设置里面增加这两个系统变量,以便控制改代码是否生效,$cfg_ckbodyopen是Y表示启用,其他任何字符都不使用,默认打开使用。$cfg_ckbodynum是未登陆的来客显示显示文章的字数,默认500字符,即250个中文字符。还有,上面的<div和</div>之间的是没有登陆时打开文章显示在文章下面的,可以自行修改,但是注意,修改的时候不要用双引号,当然你会加上转义符的除外。

打开include\arc.archives.class.php文件

找到“//End foreach”

在下面加上

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

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=newMemberLogin();

$this->Fields['ckbodyhtml']="<br/><divstyle='width:80%;margin-left:10%;margin-top:30px;float:left;border:1pxsolid#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/}。

注明:本文为星速云原创版权所有,禁止转载,一经发现将追究版权责任!

(0)
上一篇 2022年8月9日 上午9:01
下一篇 2022年8月9日 上午9:01

相关推荐

发表评论

登录后才能评论
问答社区 QQ客服
微信客服
微信客服
分享本页
返回顶部