找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 528|回复: 0

织梦DEDECMS网站模板实现未注册会员仅能查看文章部分内容的方法

[复制链接]
发表于 2012-4-18 10:46:54 | 显示全部楼层 |阅读模式
织梦DEDECMS网站模板实现未注册会员仅能查看文章部分内容的方法:
织梦dedecms网站实现未注册会员仅能查看文章部分内容。这是一个很实用的方法,现在就给大家讲述下详细的解决办法。
打开include/arc.archives.class.php文件 找到“//End foreach” 在下面加上

   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'] = "
  你没有登录,无法阅读全文内容,点击此处登录 ";   
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布局函数 前面加上   var $MemberLogin;  
这样就可以了,在模板用{dede:field.ckbody/} 代替本来的{dede:field.body/}就可以了,

当然,若是你留意看的,你就会发现上面有两个全局变量 $cfg_ckbodyopen 和 $cfg_ckbodynum 你可以在织梦dede系统配置内里增加这两个系统变量,以便可以不用改代码是否见效, $cfg_ckbodyopen 是提示启用,其他任何字符都不使用,默认打开使用。 $cfg_ckbodynum 是未登录的访客显示文章的字数,默认500字符,即250此中文字符。 尚有,上面的之间的是没有登陆时打开文章显示在文章下面的, 可以自行修改,可是留意,修改的时候不要用双引号,固然你会加上转义符的除外。

以上说的是dedecms V 5.3 的修改要领。
DEDECMS V5.1 的和V5.3基本情同,是打开 include\inc_archives_view.php 这个文件
上面修改的文件内里require_once(DEDEINC.'/memberlogin.class.php');改成 require_once(dirname(__FILE__).'/inc_userlogin.php');
在模板用{dede:field/} 代替本来的{dede:field/}就可以了 好了,今天的dedecms模板实现未注册会员仅能查看文章部分内容就讲述到这里了,感谢大家的关注,也许大家都对织梦仿站感兴趣吧。哈哈
织梦dede仿站还是有很多乐趣的哦!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|要学吧论坛

GMT+8, 2026-1-24 01:14 , Processed in 0.039250 second(s), 27 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表