destoon采集论坛

 找回密码
 立即注册
查看: 93|回复: 3

destoon调用指定顶级分类的方法

[复制链接]

79

主题

258

回帖

1247

积分

金牌会员

Rank: 6Rank: 6

积分
1247
发表于 2015-8-9 22:50:42 | 显示全部楼层 |阅读模式
本方法主用来调用某个分类的顶级分类,或者二级,三级,指定级别的分类

如:

   例一: 顶级分类>二级分类>三级分类>四级分类>五级分类>六级分类

   例二:顶级分类>二级分类>三级分类>四级分类>

以上两个例子中,一个分类树是六级,一个分类树是四级,下面客户有一个需求,不管是在 例一的六级分类下,还是例二的四级分类下的文章内容或者列表页,调用出本分类的上级分类中的二级分类。

(PS:当然也可能是调用顶级分类或者三级分类),有些分类树可能还更多级别,或者只有两级,也就是说不管在任何分类下的文章,我都只调用他的上级分类的第二级别的分类名称。

相信这个需求还是有不少会有的,下面说调用方法

首先在include/global.func.php 增加一个函数

function spid($catid,$level) {
        global $db;
        $catid = intval($catid);
        $row = $db->get_one("selec parentid,arrparentid,catid from {$db->pre}category wher catid=$catid", 'CACHE');
        $arrparentids = $row['arrparentid'];
        $arrparentid = explode(',', $arrparentids);
        $pid = $arrparentid[$level];
        $pid = isset($pid) ? intval($pid) : 0;
        return $pid;
}

调用方法
列表循环中:{spid($t[catid],3)}
内容页:{spid($catid,3)}

里面的3指的调用二级分类,2调用的是顶级分类,4调用的是三级分类,以此类推,因为在DT的分类表中arrparentid字段的第一位无论是几分类都是0,所以我们调用上级分类时要往后推一位。

如果不懂,请加群:61291160
回复

使用道具 举报

95

主题

3474

回帖

8086

积分

论坛元老

Rank: 8Rank: 8

积分
8086
发表于 2015-8-10 09:04:30 | 显示全部楼层

楼主 好心人
回复 支持 反对

使用道具 举报

71

主题

3537

回帖

8055

积分

论坛元老

Rank: 8Rank: 8

积分
8055
发表于 2015-8-10 16:37:06 | 显示全部楼层

不错不错
回复 支持 反对

使用道具 举报

8

主题

58

回帖

170

积分

注册会员

Rank: 2

积分
170
发表于 2015-8-11 13:44:03 | 显示全部楼层

可以,楼主精神值得学习
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|destoon采集论坛

GMT+8, 2025-11-23 17:46 , Processed in 0.017099 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表