首页 > CMS > 织梦DEDE > 正文

织梦dedecms调用顶级栏目名称和URL链接

2024-07-12 08:33:55
字体:
来源:转载
供稿:网友
织梦dedecms调用顶级栏目名称和URL链接。
问题: 
  在2级栏目页面单独调用该栏目的顶级栏目名称! 
  方法思路: 
  在 {dede:type} <a href="[field:typelink /]">[field:typename /]</a>  {/dede:type} 标签的基础上进行修改。   调用方法: {dede:type2} <a href="[field:typelink /]">[field:typename /]</a>  {/dede:type2}   新标签放置位置:
/include/taglib/type2.lib.php保存为type2.lib.php标签就可以使用<?php/* vim: set expandtab tabstop=4 shiftwidth=4: */// +----------------------------------------------------------------------+// | PHP version 5                                                        |// +----------------------------------------------------------------------+// | Copyright (c) 1997-2004 The PHP Group                                |// +----------------------------------------------------------------------+// | This source file is subject to version 3.0 of the PHP license,       |// | that is bundled with this package in the file LICENSE, and is        |// | available through the world-wide-web at the following url:           |// | http://www.php.net/license/3_0.txt.                                  |// | If you did not receive a copy of the PHP license and are unable to   |// | obtain it through the world-wide-web, please send a note to          |// | license@php.net so we can mail you a copy immediately.               |// +----------------------------------------------------------------------+// | Authors: Original Author <author@example.com>                        |// |          Your Name <you@example.com>                                 |// +----------------------------------------------------------------------+//// $Id:$if (!defined('DEDEINC')) exit('Request Error!');function lib_type2(&$ctag, &$refObj) {    global $dsql, $envs;    $attlist = 'typeid|0';    FillAttsDefault($ctag->CAttribute->Items, $attlist);    extract($ctag->CAttribute->Items, EXTR_SKIP);    $innertext = trim($ctag->GetInnerText());    if ($typeid == 0) {        $typeid = (isset($refObj->TypeLink->TypeInfos['topid']) ? $refObj->TypeLink->TypeInfos['topid'] : $envs['typeid']);//echo "ssssssssss1".$refObj->TypeLink->TypeInfos['topid'];//echo "ssssssssss2".$envs['typeid']; exit;    }//echo "typeid:".$typeid; exit;//lyy 如果topid==0 就是顶级分类,取当前记录if($refObj->TypeLink->TypeInfos['topid']==0){$typeid=$refObj->TypeLink->TypeInfos['id'];}//echo "typeid:".$typeid; exit;    if (empty($typeid)) return ''; $row = $dsql->GetOne("SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath                           FROM `dede_arctype` WHERE id='$typeid'");    if (!is_array($row)) return '';    if (trim($innertext) == '') $innertext = GetSysTemplets("part_type_list.htm");    $dtp = new DedeTagParse();    $dtp->SetNameSpace('field', '[', ']');    $dtp->LoadSource($innertext);    if (!is_array($dtp->CTags)) {        unset($dtp);        return '';    } else {//lyy 以下getTypeUrl($row[topid]错的,换成 $row['id'] echo  $row['id']."sssss";exit;        $row['typelink'] = GetTypeUrl($row['id'], MfTypedir($row['typedir']) , $row['isdefault'], $row['defaultname'], $row['ispart'], $row['namerule2'], $row['siteurl'], $row['sitepath']);//print_r($row);exit;        foreach ($dtp->CTags as $tagid => $ctag) {            if (isset($row[$ctag->GetName() ])) $dtp->Assign($tagid, $row[$ctag->GetName() ]);        }        $revalue = $dtp->GetResult();        unset($dtp);        return $revalue;    }} ?> 

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表