? DEDECMS织梦tags标签关键词url以ID并伪静态html-CSS布局HTML 365bet亚洲版_365Bet充值钱没到账_365bet网址
您的位置:CSS5 > DEDECMS >

DEDECMS织梦tags标签关键词url以ID并伪静态html

发布日期:2019-09-26 23:24:15 来源:WWW.CSS5.COM.CN

DEDECMS织梦实现tags标签不以中文字为url,以中文标签对应id为url并实现伪静态html。如:/tags/1-1.html

亲自测试DEDECMS V5.7 SP2版本

一、新旧tags对比

原来的:

/tags/纳税信用累积/1/

现在实现伪静态并将URL中中文词改为对应id:

/tags/1-1.html

1-1.html中第一个1对应中文tags词对应id,第二个1对应分页。

修改后伪静态后路径:
//www.css5.com.cn/tags.html
//www.css5.com.cn/tags/1-1.html
//www.css5.com.cn/tags/1-2.html
其中1-1和1-2中前第一个1为tag标签词对应id

二、实现修改对应文件代码

1、更改include/arc.taglist.class.php 文件中的代码如下:

1-1、找到

$this->TagInfos = $this->dsql->GetOne("Select * From `dede_tagindex` where taglike '{$this->Tag}' ");

替换为:

$this->TagInfos = $this->dsql->GetOne("Select * From `dede_tagindex` where id like'{$this->Tag}' ");

注:代表从数据库中输出tag名字变更为输出tag的ID,即tags.php?/中文,变成tags.php?/id

1-2、找到(获取当前链接地址)

function GetCurUrl()
{
if(!empty($_SERVER["REQUEST_URI"]))
{
$nowurl = $_SERVER["REQUEST_URI"];
$nowurls = explode("?",$nowurl);
$nowurl = $nowurls[0];
}
else
{
$nowurl = $_SERVER["PHP_SELF"];
}
return $nowurl;
}

修改成

function GetCurUrl()
{
$nowurl = $_SERVER["PHP_SELF"];
$nowurl=str_replace(".php",'',$nowurl);
return $nowurl;
}

1-3、找到(修改连接地址路径1)

$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;

改成

$plist = '';
if(eregi('info',$listitem))
{
$plist .= $maininfo.' ';
}
if(eregi('index',$listitem))
{
$plist .= $indexpage.' ';
}
if(eregi('pre',$listitem))
{
$plist .= $prepage.' ';
}
if(eregi('pageno',$listitem))
{
$plist .= $listdd.' ';
}
if(eregi('next',$listitem))
{
$plist .= $nextpage.' ';
}
if(eregi('end',$listitem))
{
$plist .= $endpage.' ';
}
return $plist;

1-4、找到(修改分页链接)

if($j == $this->PageNo)
{
$listdd.= "
  • $j
  • \r\n";
    }
    else
    {
    $listdd.="
  • ".$j."
  • \r\n";
    }

    修改成

    if($j == $this->PageNo)
    {
    $listdd.= " $j ";
    }
    else
    {
    $listdd.=" ".$j." ";
    }

    1-5、找到(修改分页 上一页 下一页路径)

    if($this->PageNo != 1)
    {
    $prepage.="
  • 上一页
  • \r\n";
    $indexpage="
  • 首页
  • \r\n";
    }
    else
    {
    $indexpage="
  • 首页
  • \r\n";
    }
    if($this->PageNo!=$totalpage && $totalpage>1)
    {
    $nextpage.="
  • 下一页
  • \r\n";
    $endpage="
  • 末页
  • \r\n";
    }
    else
    {
    $endpage="
  • 末页
  • \r\n";
    }

    修改成

    if($this->PageNo != 1)
    {
    if($this->PageNo == 2){
    $prepage.="上一页\r\n";
    $indexpage="首页\r\n";
    }
    else{
    $prepage.=" 上一页 ";
    $indexpage=" 首页 ";
    }
    }
    else
    {
    $indexpage=" 首页 ";
    }
    if($this->PageNo!=$totalpage && $totalpage>1)
    {
    $nextpage.=" 下一页 ";
    $endpage=" 末页 ";
    }
    else
    {
    $endpage="末页";
    }

    1-6、找到(修改 共几页 去掉class和html标签)

    if($totalpage <= 1 && $this->TotalResult > 0)
    {
    return "共1页/".$this->TotalResult."条";
    }
    if($this->TotalResult == 0)
    {
    return "共0页/".$this->TotalResult."条";
    }
    $maininfo = "共{$totalpage}页/".$this->TotalResult."条\r\n";
    $purl = $this->GetCurUrl();
    $purl .= "?/".urlencode($this->Tag);

    修改成

    if($totalpage <= 1 && $this->TotalResult > 0)
    {
    return "共1页/".$this->TotalResult."";
    }
    if($this->TotalResult == 0)
    {
    return "共0页/".$this->TotalResult."";
    }
    $maininfo = "共{$totalpage}页/".$this->TotalResult."";
    $purl = $this->GetCurUrl();
    $purl .= rawurlencode($this->Tag);

    1-7、注意修改生成分页地址错误修改,tag伪静态地址自带问号错误:

    注意URL修改

    $purl .= "?/".urlencode($this->Tag);
    

    改成

    $purl .= "/".urlencode($this->Tag);
    

    2、更改include/taglib/tag.lib.php文件

    2-1、更改tag为id的地方如下

    找到

    $row['keyword'] = $row['tag'];
    

    将更改为

    $row['keyword'] = $row['id'];
    

    2-2、找到

    $row['link'] = $cfg_cmsurl."/tags.php?/".urlencode($row['keyword'])."/";
    

    更改为:

    $row['link'] = $cfg_cmsurl."/tags/".urlencode($row['id'])."-1.html";
    

    注:第一行代表将tag的名字变为tag的id,第二行代表将tags.php?/+tag关键字变更为tags格式+tag的id

    3、找到文件templets/default/taglist.htm

    3-1、我的位置代码

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

    修改为:

    当前位置:主页 > 
    TAG标签 > {dede:sql sql="select tag from divcss5_tagindex where id=~title~"}[field:tag/]{/dede:sql}
    

    3-2、title网页标题

    {dede:field.title/}_{dede:global.cfg_webname/}
    

    修改为:

    {dede:sql sql="select tag from divcss5_tagindex where id=~title~"}[field:tag/]{/dede:sql}_{dede:global.cfg_webname/}
    

    三、文章页调用

    {dede:tag sort='new' getall='0'} [field:tag /] {/dede:tag}

    四、伪静态

    1、nginx伪静态规则

    rewrite ^(.*)/tags.html $1/tags.php;
    rewrite ^(.*)/tags/(.*)-1.html $1/tags.php?/$2/$3;

    rewrite ^([^\.]*)/tags.html $1/tags.php;
    rewrite ^([^\.]*)/tags/(.*)-([0-9]+).html $1/tags.php?/$2/$3;

    2、.htaccess文件伪静态规则

    RewriteBase / 
    RewriteRule ^tags\.html$ /tags.php$1
    RewriteRule ^tags/(.*)-([0-9]+).html$ /tags.php?/$1/$2

    3、IIS下web.config文件,伪静态规则:







    4、httpd.ini 文件伪静态规则

    RewriteRule ^(.*)/tags\.html $1/tags\.php 
    RewriteRule ^(.*)/tags/(.*)-([0-9]+).html $1/tags\.php\?$2/$3

    以上为完美解决dedecms tags标签伪静态,并且以tags关键词对应id作为url路径。

    标签(Tag): 伪静态 织梦 tags dedemcs
    本文分享URL地址:https://www.css5.com.cn/dedecms/1577.shtml

    作者:CSS5原创

    上一页:上一篇:DEDECMS编辑器添加内容就不见被遮挡隐藏了解决方法
    下一页:下一篇:没有了