如何配置DedeCMS 5.7的列表和内容页的最新伪静态分页规则?

DedeCMS 5.7的伪静态规则通常需要根据服务器环境进行配置。以下是一个基于Apache服务器环境的示例:,,列表分页伪静态规则:,“apache,RewriteRule ^list([09]+).html$ list.php?page=$1 [L],`,,内容页伪静态规则:,`apache,RewriteRule ^article([09]+)([09]+).html$ view.php?aid=$1&page=$2 [L],`,,内容分页伪静态规则:,`apache,RewriteRule ^article([09]+)([09]+).html$ view.php?aid=$1&page=$2 [L],“,,这些规则可能需要根据您的具体情况进行调整。在实际应用中,请确保将规则添加到您的Apache配置文件(如httpd.conf)或.htaccess文件中,并重启Apache服务以使更改生效。

DedeCMS 5.7 列表、列表分页、内容页、内容分页最新伪静态规则

DedeCMS 5.7版本在实现伪静态方面,需要对多个文件进行修改以支持列表页、内容页及其分页的伪静态,以下是详细的步骤和说明:

准备工作

1、检查服务器是否支持伪静态:确保你的网站空间或服务器支持伪静态,如果是Apache服务器,可以通过.htaccess文件配置伪静态;如果是IIS服务器,则需要加载Rewrite组件并配置httpd.ini文件。

2、启用DedeCMS伪静态功能

进入DedeCMS后台,系统参数 > 核心设置 > 是否使用伪静态,选择“是”。

如果启用了问答模块,则在后台系统参数模块设置中将是否使用伪静态设置为“是”。

3、更新已有的静态页面为动态浏览:如果网站已经存在生成的静态栏目或文章HTML,需要在后台系统SQL命令行工具中执行以下语句:

   update dede_arctype set isdefault=1;
   update dede_archives set ismake=1;

这里的dede是你安装时的数据表前缀,根据实际情况替换。

修改PHP源码

1、列表页和内容页的伪静态

打开/include/helpers/channelunit.helper.php文件,找到GetFileName()函数中的如下代码:

     // 动态文章
     if($cfg_rewrite == 'Y') {
       return $GLOBALS["cfg_plus_dir"]."/view".$aid.'1.html';
     }

将其替换为:

     // 动态文章
     if($cfg_rewrite == 'Y') {
       return "/DedeCMS/DedeCMS5.7".$aid.'1.html';
     }

这样,文章链接格式从默认的/plus/view11.html改为/DedeCMS/DedeCMS5.711.html。

同样在该文件中,找到GetTypeUrl()函数中的如下代码:

     // 动态
     $reurl = $GLOBALS['cfg_phpurl']."/list.php?tid=".$typeid;

将其替换为:

     // 动态
     $reurl = "/category/list".$typeid.".html";

这样,频道或列表页URL从默认的/plus/list.php?tid=1变更为/category/list1.html形式。

2、列表分页的伪静态

打开/include/arc.listview.class.php文件,找到获取动态的分页列表GetPageListDM()函数末尾处的如下代码:

     $plist = str_replace('.php?tid=', '', $plist);

将其替换为:

     $plist = str_replace('plus/list.php?tid=', 'DedeCMS/DedeCMS5.7', $plist);

这样,列表分页链接格式从默认的plus/list.php?tid=x$x$xl修改为DedeCMS/DedeCMS5.7xxx.html。

3、内容分页的伪静态

打开/include/arc.archives.class.php文件,找到获取动态的分页列表GetPagebreakDM()函数末尾片的如下代码:

     $PageList = str_replace("plus/view.php?tid=","DedeCMS/DedeCMS5.7",$PageList);

将其替换为:

     $plist = str_replace('plus/view.php?tid=', 'DedeCMS/DedeCMS5.7', $plist);

这样,文章分页链接格式从默认的plus/view.php?tid=x$x$xl修改为DedeCMS/DedeCMS5.7xxx.html。

如何配置DedeCMS 5.7的列表和内容页的最新伪静态分页规则?

4、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'])."/";

这样,TAG标签URL从默认的/tags.php?/dedecms模板/变为/tags/dedecms模板/。

配置伪静态规则(针对IIS服务器)

对于IIS服务器,需要配置httpd.ini文件,添加以下伪静态规则:

[ISAPI_Rewrite]
3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
RewriteRule ^(.*)/RMB/list([09]+).html $1/plus/list.php?tid=$2 [I]
RewriteRule ^(.*)/RMB/list([09]+)([09]+)([09]+).html $1/plus/list.php?tid=$2&TotalResult=$3&PageNo=$4 [I]
RewriteRule ^(.*)/RMB/huilv([09]+)([09]+).html $1/plus/view.php?arcID=$2&pageno=$3 [I]
RewriteRule ^(.*)/(.*)_(.*)_([09]+).html $1/huilv/?from=$2&to=$3&num=$4 [I]
RewriteRule ^(.*)/tags.html $1/tags.php [I]
RewriteRule ^(.*)/tags/(.*)(?:(?.*))* $1/tags.php?/$2 [I]
RewriteRule ^(.*)/tags/(.*)/(?:(?.*))* $1/tags.php?/$2/ [I]
RewriteRule ^(.*)/tags/(.*)/([09])(?:?.*)* $1/tags.php?/$2/$3 [I]
RewriteRule ^(.*)/tags/(.*)/([09])/(?:?.*)* $1/tags.php?/$2/$3/ [I]

保存为httpd.ini文件并上传到网站的根目录。

FAQs

问题1:如何确认我的服务器是否支持伪静态?

答:可以联系你的空间提供商询问是否支持伪静态,如果是自己的服务器,通常Apache服务器通过.htaccess文件配置伪静态,而IIS服务器需要加载Rewrite组件并配置httpd.ini文件来支持伪静态。

问题2:修改完PHP源码后,是否需要重启服务器?

答:一般情况下,不需要重启服务器,但为了确保修改生效,建议清除浏览器缓存或重新生成页面缓存,如果你的服务器有opcode缓存如APC或Zend Optimizer+,可能需要重启这些服务。

原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1212250.html

(0)
未希的头像未希新媒体运营
上一篇 2024-10-14 00:20
下一篇 2024-10-14 00:20

相关推荐

  • 如何正确调用DedeCMS网站中的文章标题和简标题?

    在DedeCMS中,文章标题和简标题的调用问题通常涉及到模板文件中的标签使用。要正确显示文章的标题或简标题,你需要在模板文件中找到相应的位置,并插入正确的标签。使用{dede:field.title/}来调用文章标题,而简标题可能需要自定义字段来实现。如果遇到困难,建议查阅DedeCMS的官方文档或寻求社区帮助。

    2024-09-04
    020
  • 如何在织梦DeDeCms后台登录界面将验证码改为数字形式?

    要更改织梦DeDeCms后台登录验证码为数字,可以按照以下步骤操作:,,1. 打开织梦DeDeCms的安装目录,找到data/sessions文件夹。,2. 在sessions文件夹中,找到名为dede_login_captcha.php的文件。,3. 使用文本编辑器(如Notepad++或Sublime Text)打开dede_login_captcha.php文件。,4. 在文件中找到以下代码:,,“php,$code = ‘0’;,for ($i = 1; $i˂ $len; $i++) {, $code .= $charset[rand(0, $len 1)];,},`,,5. 将上述代码修改为:,,`php,$code = ‘0’;,for ($i = 1; $i˂ $len; $i++) {, $code .= rand(0, 9);,},`,,6. 保存并关闭dede_login_captcha.php`文件。,7. 重新登录织梦DeDeCms后台,验证码将只包含数字。

    2024-09-29
    018
  • 如何在DEDECMS幻灯片中巧妙应用JavaScript实现动态效果?

    在DEDECMS幻灯片中,JavaScript可以用于实现动态效果。可以使用jQuery库来实现幻灯片的自动播放、暂停、切换等效果。可以通过编写JavaScript代码来控制幻灯片的显示和隐藏,以及设置幻灯片的播放速度和播放顺序等。

    2024-09-03
    023
  • 如何在DedeCMS中根据文章标题自动生成标签?

    在dedecms中,可以通过文章标题自动获取tag,实现方法是使用系统内置的函数。

    2024-10-02
    06

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

免费注册
电话联系

400-880-8834

产品咨询
产品咨询
分享本页
返回顶部
云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购  >>点击进入