織夢(mèng)dedecms模板未登錄會(huì)員只能查看文章的一部分
要讓未登錄會(huì)員只能查看文章的一部分,這里需要修改dedecms本身的文件,修改后,你會(huì)發(fā)現(xiàn)上面有兩個(gè)全局變量 $cfg_ckbodyopen 和 $cfg_ckbodynum ,你可以在后臺(tái)系統(tǒng)設(shè)置里面增加這兩個(gè)系統(tǒng)變量,以便控制改代碼是否生效, $cfg_ckbodyopen 是Y表示啟用,其他任何字符都不使用,默認(rèn)打開使用。 $cfg_ckbodynum 是未登陸的來(lái)客顯示顯示文章的字?jǐn)?shù),默認(rèn)500字符,即250個(gè)中文字符。 還有,上面的<div 和 </div>之間的是沒有登陸時(shí)打開文章顯示在文章下面的,可以自行修改,但是注意,修改的時(shí)候不要用雙引號(hào),當(dāng)然你會(huì)加上轉(zhuǎn)義符的除外。
打開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'] = " <br /><div class='ckbodyhtml' style='width:80%;margin-left:10%;margin-top:30px;float:left;border:1px solid #000;background:#dedede;text-align:center;'> 你沒有登陸,無(wú)法閱讀全文內(nèi)容,點(diǎn)擊此處登陸 </div>";if($this->MemberLogin->IsLogin()){ $this->Fields['ckbody'] = $this->Fields['body']; //已經(jīng)登陸 }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構(gòu)造函數(shù)
前面加上
var $MemberLogin;
到此就可以了,在模板用{dede:field.ckbody/} 代替原來(lái)的{dede:field.body/}。
以上就是織夢(mèng)模板如何實(shí)現(xiàn)未登錄會(huì)員只能查看文章的一部分的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)和解決疑問有所幫助,也希望大家多多支持武林網(wǎng)。新聞熱點(diǎn)
疑難解答
圖片精選