当前位置:首页 > 文章 > 帝国CMS > 正文内容

帝国CMS模板内容页没有相关信息则调用其它文章信息的方法

3年前 (2022-10-21)帝国CMS7723

帝国CMS内容页没有相关信息时,则调用其它文章信息的方法!其实没那么复杂:

  帝国cms默认的[!--other.link--]标签调用相关链接时,如果没有相关链接的话,则会显示“暂无相关链接”。对于一些采集站或其他需要增加内链的网站来说,此时最好能调用本栏目的其它一些信息填充进来。这里分享一个自己用的函数,实现这个功能。

  当信息有相关信息时,调用相关信息,如果没有,则调用同栏目、当前信息前后100个id之内的信息中发布时间最靠近的,100可以设置成参数。将此函数放进 userfun.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;
}

  模板中调用标签:<!--?=dp_getkeyboard(200)?-->

  这个函数满足我一个小站的功能,对于其它网站来说,补充调用信息可能比较简陋,可以自行修改。

扫描二维码推送至手机访问。

版权声明:本文由蓝博发布,如需转载请注明出处。

本文链接:https://blueboss.cn/p/213.shtml

“帝国CMS模板内容页没有相关信息则调用其它文章信息的方法” 的相关文章

帝国cms内容模板中获取分页数以及当前分页

帝国cms内容模板中获取分页数以及当前分页

帝国cms内容页中做一些个性的分页,如获取所有分页数量和当前分页号,如何做呢? 1.内容模板调用标签:所有分页数为[!--page.count--] 当前分号为[!--page.on--] 2.修改文件 打开/e/functions.php 找到大概3533行左右添加的代码如下: $string=...

帝国CMS发布文章替换正文图片标签里ALT内容

帝国CMS发布文章替换正文图片标签里ALT内容

帝国CMS发布信息文章时替换正文IMG图片标签里的ALT内容 有利于网站的SEO优化。 在 e/class/userfun.php 里面增加 //替换正文IMG里的ALT内容 function user_imgalt($mid,$f,$isadd,$isq,$value,$cs){ $title=...

帝国CMS多值字段如何调用多值字段最新增加的一行内容

帝国CMS多值字段如何调用多值字段最新增加的一行内容

帝国cms模板里面的多值字段怎么调用呢? 多值字段调用如下: <?php $morefr=explode('||||||',$navinfor[字段名]); $mfcount=count($morefr); for($mfi=0;$mfi<$mfcount;$mfi++) { $mor...

帝国CMS模板用灵动标签调用同级栏目导航并且当判断显示当前栏目高亮

帝国CMS模板用灵动标签调用同级栏目导航并且当判断显示当前栏目高亮

帝国cms模板里面怎么用灵动标签调用同级的栏目导航呢?同时判断显示当前栏目导航高亮! 调用代码:(注意:hover为判断当前高亮css样式) [e:loop={"select classname,classpath,classid from phome_enewsclass where bclas...

帝国CMS跳过选择会员类型直接注册

帝国CMS跳过选择会员类型直接注册

怎么跳过选择会员组类型直接注册呢?帝国cms模板网就来告诉大家帝国CMS跳过选择会员类型直接注册方法! 打开 e/class/user.php 文件 查找: $changeregisterurl="ChangeRegister.php" 替换为: $changeregisterurl="" 即可...

帝国CMS怎么调用自定义分类怎么实现

帝国CMS怎么调用自定义分类怎么实现

帝国CMS调用自定义分类的方法:   具体标签如下: [e:loop={'select id,path,title from [!db.pre!]enewspage where classid=1 order by id',20,24,0}] <?php $pageurl=$public_r...