兼容静态 动态 伪静态

支持第一页直接是栏目链接,第二页,第三页。。。。按当前分页

支持在开启绝对路径和没开启绝对路径不同输出

实现教程

1.打开 include/arc.listview.class.php 找到

else if($PageNo!=1 && $ctag->GetName()=='field' && $ctag->GetAtt('display')!='')

在它的上面加入

else if($ctag->GetName()=="itemcururl")

{

if($ismake==0)

{

$this->dtp->Assign($tagid,$this->GetItemsCurUrlDM());

}

else

{

$this->dtp->Assign($tagid,$this->GetItemsCurUrlST());

}

}

继续找到

获得当前的页面文件的url

在它的注释上面加入

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
/**
*获得当前栏目链接与当前分页链接
*
*@accesspublic
*@returnstring
*@return{dede:itemcururl/}
*/www.dede58.com织梦模板
functionGetItemsCurUrlDM()
{
global$cfg_basehost,$cfg_multi_site;
$purl=$this->GetCurUrl();
//如果开启为静态,则对规则进行替换
if($cfg_rewrite=='Y')
{
$nowurls=preg_replace("/-/",".php?",$purl);
$nowurls=explode("?",$nowurls);
$purl=$nowurls[0];
}
if($this->PageNo==1)
{
$geturl="tid=".$this->TypeID;
$purl.='?'.$geturl;
}
else
{
$geturl="tid=".$this->TypeID."&TotalResult=".$this->TotalResult."&";
$purl.='?'.$geturl."PageNo=".$this->PageNo;
}
$cururl=($cfg_multi_site=='Y')?$purl:$cfg_basehost.$purl;
return$cururl;
}
functionGetItemsCurUrlST()
{
global$cfg_basehost;
$tnamerule=$this->GetMakeFileRule($this->Fields['id'],"list",$this->Fields['typedir'],$this->Fields['defaultname'],$this->Fields['namerule2']);
$tnamerule=preg_replace("/^(.*)\//",'',$tnamerule);
$cfg_basehost=preg_replace('#/$#','',$cfg_basehost);
$tnamerule=MfTypedir($this->Fields['typedir']).'/'.$tnamerule;
if($this->PageNo==1)
{
$purl=MfTypedir($this->Fields['typedir']).'/';
}
else
{
$purl=str_replace("{page}",$this->PageNo,$tnamerule);
}
$cururl=($cfg_multi_site=='Y')?$purl:$cfg_basehost.$purl;
return$cururl;
}

列表页模板调用标签写法

{dede:itemcururl/}

免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服处理。

发表回复