帝国CMS 内容页无相关信息时调用其它信息方法
帝国cms默认的[!--other.link--]标签在调用相关链接时,如无相关链接时,则会显示“暂无相关链接”,这对于网站来说是体验极其不友好的。模版标签:<ul>[!--other.link--]</ul>,如仅修改“无相关信息”这几个字,可修改语言包文件替换文字路径为:e/data/language/gb/pub/fun.php
如想实现无相关信息时显示本栏目下其他内容,此时最好能调用本栏目的其它一些信息填充进来,进一步提高网站的友好度。那么该如何实现这样的功能呢?以下分享一下实现的方法:
function dp_GetKeyboard($num=100){ global $empire,$public_r,$class_r,$fun_r,$dbtbpre,$class_r,$navinfor; $keyid=$navinfor['keyid']; $classid=$navinfor['classid']; $id=$navinfor['id']; $link_num=$class_r[$classid]['link_num']; if(!$link_num){ return $fun_r['NotLinkNews']; } $tr=$empire->fetch1("select otherlinktemp,otherlinktempsub,otherlinktempdate from ".GetTemptb("enewspubtemp")." limit 1"); $temp_r=explode("[!--empirenews.listtemp--]",$tr[otherlinktemp]); if($keyid){ $add="id in (".$keyid.")"; }else{ $e=$id+$num; $s=$id-$num; $add=" classid=".$classid." and id>".$s." and id<".$e; } $key_sql=$empire->query("select id,newstime,title,isurl,titleurl,classid,titlepic from {$dbtbpre}ecms_".$class_r[$classid][tbname]." where ".$add." order by newstime desc limit $link_num"); while($link_r=$empire->fetch($key_sql)){ if($link_r['id']==$id){ continue; } $keyboardtext.=RepOtherTemp($temp_r[1],$link_r,$tr); } if(empty($keyboardtext)){ return $fun_r['NotLinkNews']; } $keyboardtext=$temp_r[0].$keyboardtext.$temp_r[2]; return $keyboardtext; } |
第一步:将以上代码放进 e/class/userfun.php 文件中,相关信息模板如需要样式等可进入修改:后台》模板》公共模板》相关信息模板
第二步:在内容模板中使用调用方法:<?=dp_GetKeyboard(200)?>
本网声明:海南科技网站长登载此文仅出于信息分享,并不意味着赞同其观点或证实其描述,不承担侵权行为的连带责任。文章内容仅供参考,不构成投资建议。投资者据此操作,风险自担。版权归原作者所有,如来源标注有误、不希望本网刊载或侵权,请与我们联系,本网核实后将立即撤除。来源为本网的,未经本网书面授权,任何单位或个人不得转载、摘编和发表。
责任编辑:NO296