Home > CMS Tutorial > DEDECMS > body text

How to set TAG tags and paging pseudo-static in DedeCMS system

藏色散人
Release: 2019-12-14 10:02:57
Original
2148 people have browsed it

How to set TAG tags and paging pseudo-static in DedeCMS system

How to set TAG tags and paging pseudo-static in DedeCMS system?

Many CMS systems now have TAGS tags. The well-known DEDECMS also has this function, but its label function is very poor, which is not conducive to SEO optimization. At the same time, there are many problems, such as: when the current page does not exist on the previous page, the link is "-1", and there is also the problem of " This label does not exist in the system and may have been removed."

Recommended learning: 梦Weavercms

Today I will teach you how to make labels pseudo-static (some information comes from the Internet), and also fixed some of the above mentioned BUG.

1. Modify the front-end display link

The effect we achieve here is to change the original /tags.php?keywords to /tags/keywords.html.

Here we mainly modify the called tag. In /include/taglib/tag.lib.php, find

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

on line 87 and change it to:

$row['link'] = $cfg_cmsurl."/tags/".urlencode($row['keyword']).".html";
Copy after login

2. Modify the paging code part

We need to modify include/arc.taglist.class.php, find the paging function, and replace it with:

/** 
* 获取动态的分页列表 
* 
* @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 <= 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(); 
$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) 这是修正上一页为负数的问题
        if($this->PageNo != 1 && $this->PageNo != "")
{ 
$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"; } //获得数字链接 $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; $j<=$total_list; $j++) { if($j == $this->PageNo) { $listdd.= "
  • $j
  • \r\n"; } else { $listdd.="
  • ".$j."
  • \r\n"; } } $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; }
    Copy after login

    3. Set pseudo-static rules

    We take iis7 as an example and set the following rules:

     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
    
    Copy after login

    The above is the detailed content of How to set TAG tags and paging pseudo-static in DedeCMS system. For more information, please follow other related articles on the PHP Chinese website!

    Related labels:
    source:php.cn
    Statement of this Website
    The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
    Popular Tutorials
    More>
    Latest Downloads
    More>
    Web Effects
    Website Source Code
    Website Materials
    Front End Template
    About us Disclaimer Sitemap
    php.cn:Public welfare online PHP training,Help PHP learners grow quickly!