kk软件kk软件

KK.No.One
kkNo1:kk原创软件分享博客
文章24 浏览4424

dedecms判断首页时显示友情链接等信息

网站备案后首页需放置备案编号,所有的页面共用同一个footer.html模板,所以要判断首页时,显示备案编号。
百度出的结果是判断typeid为空的时候,即为首页。
即:{dede:field name=typeid runphp="yes"}(@me=="")? @me='<a href="http://www.beian.miit.gov.cn/" target="_blank" rel="nofollow">备案编号</a><br>':@me="";{/dede:field} 
生成首页测试成功。
一直想省事,所以友情链接这一块,也写在footer模块中,首页包括栏目页面和文章内页均会展示友情链接,所以趁这这时候,一块让除首页之外,不再展示友情链接。
所以凭印象中的织梦标签,模板中运行php最为省事,于是百度模糊查询,得出的思路,是判断当面页面是index.php时,则为首页,输出相应信息。即判断$_SERVER[SCRIPT_NAME]值为/index.php。
访问/index.php?upcache=1生成html首页,并修改一遍文章,确实生成的首页显示出友情链接,文章信息页不显示了,看来方法有效,于是开始全站生成html。
一杯水的功夫(5L的农夫山泉),所有页面重新生成完毕,重新进入网站首页,发现首页的友情链接信息却不见了!
这莫非是有Bug,于是重访问/index.php?upcache=1生成html首页,发现它又显示出来了。Bug不轻啊!那如何才能完美实现只在首页显示信息!
恍然大悟,在路径“生成”→“更新主页HTML”里并不是通过index.php生成的,所以这种方式判断首页不可用。
于是又打开生成静态首页的文件makehtml_homepage.php,发现判断$GLOBALS['_arclistEnv']为index时,表示生成首页。于是加上判断语句,反复测试,很完美。
当然,也可通过判断post过来的信息是否存在判断
dopost=make&templet=default%2Findex.htm&position=..%2Findex.html&saveset=1&showmod=1&Submit=更新主页HTML
下面是修正后的完整代码,即仅在首页显示友情链接

{dede:php runphp='yes'} 
if($_SERVER[SCRIPT_NAME]=='/index.php' or $GLOBALS['_arclistEnv']=='index'){
$str='<div class="friendship clr mt10">友情链接:';  
global $dsql;
$sql='select * from dede_flink where ischeck>0';//查询已审核的所有友情链接
$dsql->SetQuery($sql);
$dsql->Execute();
while($row = $dsql->GetArray()){
$str.="<a href={$row['url']} target=_blank>{$row['webname']}</a>";
}
$str.='</div>';
@me = $str; 
}{/dede:php}


最后编辑于:2020/11/14作者: 管理员

上一篇:已经是第一篇
下一篇:已经是最后一篇

文章评论

表情

共 0 条评论,登陆后可发表评论
  • 诺大宫殿竟空无一人,此把龙椅空着好可惜!少年何不试试?