登录到Dedecms CMS后台,开始伪静态的设置。在“系统”->“核心设置”中,找到“是否使用伪静态”选项并启用。
首页伪静态
首先,删除站点根目录下的index.html文件,并且在后续更新时避免生成HTML文件。
对于栏目和文章,在栏目列表选项中选择使用动态页浏览。同时,在发布文章时也选择仅动态浏览。
打开/include/helpers/channelunit.helper.php文件:
// 动态文章
if($cfg_rewrite == 'Y') {
return $GLOBALS["cfg_plus_dir"]."/view-".$aid.'-1.html';
}
将其替换为:
// 动态文章
if($cfg_rewrite == 'Y') {
return "/archives/view-".$aid.'-1.html';
}
这样可以将文章页默认链接格式从 /plus/view-1-1.html 更改为 /archives/view-1-1.html。
此外,修改GetTypeUrl()中的代码:
$reurl = $GLOBALS['cfg_phpurl']."/list.php?tid=".$typeid;
替换为:
$reurl = "/category/list-".$typeid.".html";
这将把频道或列表页的URL更改为 /category/list-1.html 的形式。
列表分页伪静态
打开/include/arc.listview.class.php文件,找到获取动态分页列表GetPageListDM()函数末尾处:
$plist = str_replace('.php?tid=', '-', $plist);
将其替换为:
$plist = str_replace('plus', 'category', $plist);
这会将默认的 plus 替换为 category,从而将列表分页默认链接格式从 /plus/list-1-2-1.html 修改为 /category/list-1-2-1.html。
DEDECMS文章分页伪静态
打开/include/arc.archives.class.php文件,找到获取动态分页列表GetPagebreakDM()函数末尾处:
$PageList = str_replace(".php?aid=", "-", $PageList);
替换为:
$plist = str_replace('plus', 'archives', $plist);
将默认的 plus 替换为 archives。
TAG标签伪静态
打开/include/taglib/tag.lib.php文件,找到lib_tag()函数下的:
$row['link'] = $cfg_cmsurl."/tags.php?/".urlencode($row['keyword'])."/";
替换为:
$row['link'] = $cfg_cmsurl."/tags/".urlencode($row['keyword'])."/";
搜索伪静态
一种简单的方法是直接将搜索URL中的“search.php?”替换为“search.html?”,至于“?”号之后的参数可以用任意字符匹配。
依次打开include文件夹下的channelunit.func.php、arc.searchview.class.php、arc.taglist.class.php以及/include/taglib/hotwords.lib.php文件,查找“search.php?”并替换为“search.html?”即可。
通过以上步骤,您可以成功地将Dedecms网站设置为全站伪静态,提升SEO效果和用户体验。