找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 175|回复: 0

[cms教程] 织梦dedecms副栏目名称和链接调用

[复制链接]

该用户从未签到

发表于 2021-3-6 08:57:39 | 显示全部楼层 |阅读模式

您需要 登录 才可以下载或查看,没有账号?立即注册

×
织梦副栏目名称和链接调用方法,打开 \include\extend.func.php 在最下面加入
         
        /**
         *  获取副栏目链接和名称
         *
         * @access    public
         * @param     string  $typeid2         副栏目id
         * @param     string  $result         输出
         * @return    string
         */
        if(!function_exists('GetTypeid2'))
        {
                 function GetTypeid2($typeid2)
                 {
                           global $dsql;
                           $result = '';
                           $query = "SELECT * FROM `dede_arctype` WHERE id IN($typeid2) AND ishidden1 ORDER BY FIELD(id,$typeid2)";
                           $dsql->Execute('t',$query);
                           while($row = $dsql->GetArray('t'))
                           {
                                    $typeurl = GetOneTypeUrlA($row);
                                    $result.= ($result=='' ? "[url={$typeurl},{$row['typename',}[/url]" : ','."[url={$typeurl},{$row['typename',}[/url]");
                           }
                           return $result;
                 }
        }
         
        列表页 调用标签写法
         
        [field:typeid2 function=GetTypeid2(@me)/]
         
        内容页 调用标签写法
         
        {dede:field.typeid2 function=GetTypeid2(@me)/}
         
        首页 调用标签
         
        还需要打开 /include/taglib/arclist.lib.php 找到
         
        if($CrossID=='') $orwheres[, = ' arc.typeid IN ('.GetSonIds($typeid).')';
         
         
         
        改成
         
        if($CrossID=='') $orwheres[, = " (arc.typeid in (".GetSonIds($typeid).") or arc.typeid2 in (".GetSonIds($typeid).") or CONCAT( ',', arc.typeid2, ',' ) LIKE '%,".$typeid.",%' )";
         
        继续找到
         
        else $orwheres[, = ' arc.typeid IN ('.GetSonIds($typeid).','.$CrossID.')';
         
        改成
         
        else $orwheres[, = " (arc.typeid in (".GetSonIds($typeid).",".$CrossID.") or arc.typeid2 in (".GetSonIds($typeid).",".$CrossID.") or CONCAT( ',', arc.typeid2, ',' ) LIKE '%,".$typeid.",%')";
         
        这样才可以在首页调用副栏目,标签写法是
         
        [field:typeid2 function=GetTypeid2(@me)/]
回复

使用道具 举报

网站地图|页面地图|文字地图|Archiver|手机版|小黑屋|找资源 |网站地图

GMT+8, 2024-12-29 10:57

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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