上一篇
如何从织梦dedecms子栏目中获取对应顶级栏目的ID号?
- 行业动态
- 2024-10-02
- 4315
<?php // 假设您已经连接到了数据库,并且已经定义了dedecms的相关数据库表前缀 /** * 获取子栏目的顶级栏目ID * * @param int $cid 子栏目的ID * @return int 顶级栏目的ID */ function getTopCategoryId($cid) { global $dsql; // 获取DedeCMS的数据库操作对象 // 查询当前子栏目的父栏目ID $sql = "SELECT pid FROM#@__arctype WHERE id = '$cid'"; $row = $dsql>GetOne($sql); // 如果存在父栏目,则继续向上查询,直到顶级栏目 while ($row['pid'] > 0) { $sql = "SELECT pid FROM#@__arctype WHERE id = '$row[pid]'"; $row = $dsql>GetOne($sql); } // 返回顶级栏目的ID return $row['pid']; } // 使用示例 $childCategoryId = 10; // 假设这是您要查询的子栏目ID $topCategoryId = getTopCategoryId($childCategoryId); echo "顶级栏目的ID为:$topCategoryId"; ?>
代码提供了一个函数getTopCategoryId,它接受一个子栏目的ID作为参数,然后通过查询数据库中的栏目表(#@__arctype)来递归地找到顶级栏目的ID,代码中使用了DedeCMS的数据库操作对象$dsql 来执行SQL查询。
您需要根据您的DedeCMS数据库表前缀替换#@__arctype,以确保代码在您的网站上正常工作。
本站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本站,有问题联系侵删!
本文链接:http://www.xixizhuji.com/fuzhu/119333.html