首页 >

织梦DedeCMS实现tag标签伪静态的方法

目标:使DEDECMS原来的https://www.liuzhongwei.com/a/dedejq/tags.php?/bnxbcom/ 变动为/tags/bnxbcom.html 这种伪静态模式

织梦DedeCMS实现tag标签伪静态的方法

一 | dede后台开启伪静态


二 | 修改 /include/taglib/tag.lib.php

大约87行找到


$row[‘link’] = $cfg_cmsurl.”/https://www.liuzhongwei.com/a/dedejq/tags.php?/”.urlencode($row[‘keyword’]).”/”;

改成


$row[‘link’] = $cfg_cmsurl.”/tags/”.urlencode($row[‘keyword’]).”.html”;

三 | 修改分页代码

修改分页代码。同样打开include/arc.taglist.class.php,主要是//获得上一页和下一页的链接。将//获得上一页和下一页的链接至 //获得数字链接之间的分页函数替换:

也可以直接用下面代码替换同样部分代码

(提示:网上有文章中讲的以下代码中的”pageinfo”是错误的,应该为\”pageinfo\”,不然会有错误提示哦!已经代码测试OK!)

/***获取动态的分页列表** @access public* @param int $list_len 列表宽度* @param string $listitem 列表样式* @return string*/function GetPageListDM($list_len,$listitem="info,index,end,pre,next,pageno"){$prepage="";$nextpage="";$prepagenum = $this->PageNo - 1;$nextpagenum = $this->PageNo + 1;if($list_len == "" || preg_match("/[^0-9]/", $list_len)){$list_len = 3;}$totalpage = $this->TotalPage;if($totalpage TotalResult > 0){return "共1页/".$this->TotalResult."条";}if($this->TotalResult == 0){return "共0页/".$this->TotalResult."条";}$maininfo = "共{$totalpage}页/".$this->TotalResult."条rn";$purl = $this->GetCurUrl();$basename = basename($purl);$tmpname = explode('.', $basename);$purl = str_replace($basename, '', $purl).urlencode($this->Tag);//var_dump($purl);exit;//$purl .= "?/".urlencode($this->Tag);//获得上一页和下一页的链接if($this->PageNo != 1){$prepage.="
  • 上一页
  • rn";$indexpage="
  • 首页
  • rn";}else{$indexpage="
  • 首页
  • rn";}if($this->PageNo!=$totalpage && $totalpage>1){$nextpage.="
  • 下一页
  • rn";$endpage="
  • 末页
  • rn";}else{$endpage="
  • 末页
  • rn";}//获得数字链接$listdd="";$total_list = $list_len * 2 + 1;if($this->PageNo >= $total_list){$j = $this->PageNo - $list_len;$total_list = $this->PageNo + $list_len;if($total_list > $totalpage){$total_list = $totalpage;}}else{$j=1;if($total_list > $totalpage){$total_list = $totalpage;}}for($j; $jPageNo){$listdd.= "
  • $j
  • rn";}else{$listdd.="
  • ".$j."
  • rn";}}$plist = '';if(preg_match('/info/i', $listitem)){$plist .= $maininfo.' ';}if(preg_match('/index/i', $listitem)){$plist .= $indexpage.' ';}if(preg_match('/pre/i', $listitem)){$plist .= $prepage.' ';}if(preg_match('/pageno/i', $listitem)){$plist .= $listdd.' ';}if(preg_match('/next/i', $listitem)){$plist .= $nextpage.' ';}if(preg_match('/end/i', $listitem)){$plist .= $endpage.' ';}return $plist;}

    四 | 打开templets/default/taglist.htm

    找到

    当前位置:主页 > TAG标签 > {dede:field.title /}

    修改为

    当前位置:主页 > TAG标签 > {dede:field.title /}

    五 | httpd.ini 文件里加


    RewriteRule ^(.*)/tags\.html $1/tags\.phpRewriteRule ^(.*)/tags/(.*).html $1/tags\.php\?$2如果是HTACCESS,那使用下面规则RewriteEngine onRewriteBase /RewriteRule ^tags/([0-9]+)_([0-9]+).html$        https://www.liuzhongwei.com/a/dedejq/tags.php?tagid=$1&PageNo=$2 [L]RewriteRule ^tags/([0-9]+).html$                https://www.liuzhongwei.com/a/dedejq/tags.php?tagid=$1 [L]



    织梦DedeCMS实现tag标签伪静态的方法
  • 如何增加织梦DedeCMS广告的“启用暂停”功能
  • 如何增加织梦DedeCMS广告的“启用暂停”功能 | 如何增加织梦DedeCMS广告的“启用暂停”功能 ...

    织梦DedeCMS实现tag标签伪静态的方法
  • 织梦DedeCMS网站系统中文章内容为空 用SQL语句如何删除?
  • 织梦DedeCMS网站系统中文章内容为空 用SQL语句如何删除? | 织梦DedeCMS网站系统中文章内容为空 用SQL语句如何删除? ...

    织梦DedeCMS实现tag标签伪静态的方法
  • 织梦DedeCMS搜索结果根据搜索不同栏目显示不同搜索结果模板
  • 织梦DedeCMS搜索结果根据搜索不同栏目显示不同搜索结果模板 | 织梦DedeCMS搜索结果根据搜索不同栏目显示不同搜索结果模板 ...