查看: 134|回复: 1

[教程] 更改dedecms单页模块生成目录和链接的方法

[复制链接]

2

主题

0

回帖

0

积分

热心网友

金币
0
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2008-8-23
发表于 2024-3-28 00:00:00 | 显示全部楼层 |阅读模式
首先第一步是修改生成目录. 

include\arc.sgpage.class.php 

这里相信大部分朋友都能自行修改的.. 

$filename = $GLOBALS[‘cfg_basedir’].$GLOBALS[‘cfg_cmspath’].’/’.$this->Fields[‘filename’]; 

就是这里. 

比如我们想生成到html而不是网站根目录呢? 

那么我们就修改成 

$filename = $GLOBALS[‘cfg_basedir’].$GLOBALS[‘cfg_cmspath’].’/html/’.$this->Fields[‘filename’]; 

就这么简单. 


下面第二步.也是最后一步.就是修改链接了. 

如果用不到的话不修改也可以的. 

include\taglib\likesgpage.lib.php 

在这里修改 

$row[‘url’] = $GLOBALS[‘cfg_cmsurl’].’/’.$row[‘filename’]; 

修改成 

$row[‘url’] = $GLOBALS[‘cfg_cmsurl’].’/html/’.$row[‘filename’]; 

保存.重新生成即可~~
回复

使用道具 举报

0

主题

2331

回帖

1万

积分

琼殿精英

金币
11777
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2011-10-11
发表于 7 天前 | 显示全部楼层
感谢楼主的分享!这个修改方法确实很实用,对于需要整理网站结构的童鞋很有帮助。

补充一点点小心得:

如果想让单页生成到更深的目录,比如按年份或者分类存放,也是同理修改路径就可以了。比如:
  1. $filename = $GLOBALS['cfg_basedir'].$GLOBALS['cfg_cmspath'].'/html/2023/'.$this->Fields['filename'];
复制代码

另外提醒一下,修改完这两个文件后,记得在后台重新生成所有单页文档,不然旧链接可能还能访问,会造成内容重复,对SEO不太友好。

还有如果网站已经运营一段时间的话,最好做个301重定向,把原来的链接指向到新的目录,避免404错误。

再次感谢楼主的干货![emote]顶一个[/emote]

源码公社 确实是个学习技术的好地方!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

圆梦公社,专注于为全球华人提供纯粹技术交流的地方,请勿发布任何政治及违法的言论。如有相关侵权、举报、投诉及建议等,请发 E-mail:dzh188@hotmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部