猎凡网络承接仿站、网站定制业务,诚邀您的合作! 猎凡网为你提供:dedecms织梦仿站帝国cms仿站网站定制、企业仿站等服务,欢迎您的访问!
<
>
当前位置: 首页 > 仿站知识

织梦cms获取当前栏目顶级栏目ID的两种方法

时间:2019-09-28 06:00:01  来源:admin  作者:猎凡网络

二级栏目和三级栏目测试都有效,使用此方法不仅可以调用出当前栏目的顶级栏目ID,其他的比如顶级栏目的名称和顶级栏目的链接都是可以通过下面两种方法调用的。

第一种方法调用织梦CMS顶级栏目ID,不需要修改PHP文件,直接在需要调用的地方加如下代码:

{dede:field.typeid runphp='yes'}$ID = @me; $sql = "SELECT * FROM `dede_arctype` WHERE id=$ID";$query = mysql_query($sql);$row=mysql_fetch_array($query); $relID = "$row[reid]"; if($relID == 0) {@me = "".$row['id']."";$url=$cfg_basehost.$cfg_cmspath;@me=str_replace('{cmspath}',$url,@me);}else{$sql = "SELECT * FROM `dede_arctype` WHERE id=$relID";$query = mysql_query($sql);$row=mysql_fetch_array($query); @me = "".$row['id']."";$url=$cfg_basehost.$cfg_cmspath;@me=str_replace('{cmspath}',$url,@me);}{/dede:field.typeid}

这种方法是利用织梦模板支持的SQL查询来查询当前栏目的顶级栏目ID,好处,方便不需要修改其他文件,随调随用。

第二种方法是通过修改PHP文件来实现的。打开这个文件include/helpers/extend.helper.php,在代码最底部?>前加入如下代码

/*** 获取当前栏目的的顶级栏目*/if ( ! function_exists('gettoptype')){function gettoptype($tid,$action){global $dsql,$cfg_Cs;if(!is_array($cfg_Cs)){require_once(DEDEDATA."/cache/inc_catalog_base.inc");}if(!isset($cfg_Cs[$tid][0]) || $cfg_Cs[$tid][0]==0){$topid = $tid;}else{$topid = GetTopid($cfg_Cs[$tid][0]);}$row = $dsql->GetOne("SELECT * FROM `dede_arctype` WHERE id=$topid");$toptypeurl = $topid;if($action=='id') return $topid;}}

使用这个标签{dede:field.typeid function="gettoptype(@me,id)"/}即可在前台调出当前栏目的顶级栏目ID,不过此种方法没有测试过。

本文网址:https://fangzhan.seobr.com/news/328.html
本文由猎凡仿站网发布,如果您还想了解更多关于网站仿制的文章,请点击查看 仿站知识 的其它文章,转发请注明来源及版权归属。
承接以下业务:传统网站改自适应网站、网站增加手机站、网站改全屏网站改大屏展示、GBK转UFT-8、DEDECMS转WORDPRESS、网站站群制作、企业网站设计、企业网站优化、网站托管等业务

标签:栏目   文件
相关文章

推荐资讯
热点标签

数年专注于仿站建站,擅长dedecms仿站、WORDPRESS仿站、帝国cms仿站、网站改版等业务! Copyright©2019 猎凡仿站网 All Rights Reserved