idCounter = 0;
$this->artDir = $GLOBALS['cfg_arcdir'];
$this->baseDir = $GLOBALS['cfg_cmspath'].$GLOBALS['cfg_basedir'];
$this->idArrary = "";
$this->dsql = $GLOBALS['dsql'];
}
function SiteMap()
{
$this->__construct();
}
//清理类
function Close()
{
}
/**
* 获取网站地图
*
* @access public
* @param string $maptype 地图类型 site:站点 rss:rss
* @return string
*/
function GetSiteMap($maptype="site")
{
$mapString = "";
if($maptype=="rss")
{
$this->dsql->SetQuery("SELECT id,typedir,isdefault,defaultname,typename,ispart,namerule2,moresite,siteurl,sitepath FROM #@__arctype WHERE ishidden<>1 AND reid=0 AND ispart<>2 ORDER BY sortrank");
}
else
{
$this->dsql->SetQuery("SELECT id,typedir,isdefault,defaultname,typename,ispart,namerule2,siteurl,sitepath,moresite,siteurl,sitepath FROM #@__arctype WHERE reid=0 AND ishidden<>1 ORDER BY sortrank");
}
$this->dsql->Execute(0);
while($row=$this->dsql->GetObject(0))
{
if($maptype=="site")
{
$typelink = GetTypeUrl($row->id,MfTypedir($row->typedir),$row->isdefault,$row->defaultname,$row->ispart,$row->namerule2,$row->moresite,$row->siteurl,$row->sitepath);
}
else
{
$typelink = $GLOBALS['cfg_cmsurl']."/data/rss/".$row->id.".xml";
}
$mapString .= "
\r\n
";
$mapString .= "\t
\t\t\r".$this->LogicListAllSunType($row->id,$maptype)."\t\n
\r\n";
/*
$mapString .= "";
$mapString .= "".$row->typename."";
$mapString .= " | ";
$mapString .= $this->LogicListAllSunType($row->id,$maptype);
$mapString .= " |
";
*/
}
return $mapString;
}
/**
* 获得子类目的递归调用
*
* @access public
* @param int $id 栏目ID
* @param string $maptype 地图类型
* @return string
*/
function LogicListAllSunType($id, $maptype)
{
$fid = $id;
$mapString = "";
if($maptype=="rss")
{
$this->dsql->SetQuery("SELECT id,typedir,isdefault,defaultname,typename,ispart,namerule2,moresite,siteurl,sitepath FROM #@__arctype WHERE reid='".$id."' AND ishidden<>1 AND ispart<>2 ORDER BY sortrank");
}
else
{
$this->dsql->SetQuery("SELECT id,typedir,isdefault,defaultname,typename,ispart,namerule2,moresite,siteurl,sitepath FROM #@__arctype WHERE reid='".$id."' AND ishidden<>1 ORDER BY sortrank");
}
$this->dsql->Execute($fid);
while($row=$this->dsql->GetObject($fid))
{
if($maptype=="site")
{
$typelink = GetTypeUrl($row->id,MfTypedir($row->typedir),$row->isdefault,$row->defaultname,$row->ispart,$row->namerule2,$row->moresite,$row->siteurl,$row->sitepath);
}
else
{
$typelink = $GLOBALS['cfg_cmsurl']."/data/rss/".$row->id.".xml";
}
$mapString .= "".$row->typename."\n\t\t";
$mapString .= $this->LogicListAllSunType($row->id,$maptype);
}
return $mapString;
}
}