在DedeCMS后台设置中,“附件保存形式(按data函数日期参数)”选项允许用户根据日期来组织附件的存储结构,许多用户发现即使修改了这一设置,附件仍然按照默认的日文件夹进行保存,这导致了管理上的不便和混乱,以下是具体的原因分析:
1、后台上传问题:虽然在后台系统>系统基本参数>附件设置中有“附件保存形式(按data函数日期参数):”的选项,但这个功能仅对FCK编辑器中的图片上传有效,如果通过后台直接上传文件或使用文章抓取功能,附件仍会以天为单位存放,不会按照设置的年月目录进行保存。
2、代码修改需求:为了实现所有附件按年月保存,需要对DEDECMS的代码进行手动修改,具体步骤如下:
打开后台目录dede(如果目录名被修改过,请找到对应的文件夹)。
编辑media_add.php文件,将第25行左右的$dpath = MyDate("ymd",$uptime);
改为$dpath = MyDate("y",$uptime);
。
编辑inc/inc_archives_functions.php文件,将第96行左右的$imgUrl = $cfg_uploaddir.'/'.MyDate("ymd",time());
改为$imgUrl = $cfg_uploaddir.'/'.MyDate("m",time());
。
3、全局变量添加:在inc/inc_archives_functions.php文件中,还需要添加一个全局变量$cfg_addon_savetype
,以便在获取远程图片时能够正确应用设置的保存形式,修改后的代码应如下所示:
global $cfg_multi_site,$cfg_basehost,$cfg_basedir,$cfg_image_dir,$arcID,$cuserLogin,$dsql,$cfg_addon_savetype; $imgUrl = $cfg_uploaddir.'/'.MyDate($cfg_addon_savetype, time());
4、注意事项:
在修改代码之前,建议备份相关文件,以防出现意外情况。
修改完成后,记得更新缓存并重新登录后台,以确保设置生效。
以下是关于dedecms后台设置“附件保存形式(按data函数日期参数)”参数无效的两个常见问题及解答:
1、为什么修改了后台设置后,附件仍然按照天为单位存放?
解答:这是因为DedeCMS默认只对FCK编辑器中的图片上传应用了按年月保存的功能,而后台上传和文章抓取来的图片不受影响,要实现所有附件按年月保存,需要手动修改DEDECMS的相关代码。
2、如何确保修改后的设置对所有附件生效?
解答:要确保修改后的设置对所有附件生效,需要按照上述步骤修改media_add.php和inc/inc_archives_functions.php两个文件,注意检查是否有其他模块或插件可能影响附件的保存方式,并进行相应的调整,更新缓存和重新登录后台也是确保设置生效的重要步骤。
通过这些步骤和注意事项,可以有效地解决DedeCMS后台设置“附件保存形式(按data函数日期参数)”参数无效的问题,使附件按照设定的年月目录进行保存,从而方便管理和查找。
| 问题 | 解答 |
| | |
| 问题:dedecms后台设置“附件保存形式(按data函数日期参数)”参数无效 |
| 原因 | 参数设置不正确或系统不支持该设置 |
| 解决方法 | 以下总结列出了一些可能的原因和对应的解决方案 |
原因 | 解决方案 |
1. 参数设置错误 | 确保参数设置正确,按照系统要求填写日期格式和参数 |
2. 系统不支持该设置 | 检查dedecms版本,确认是否支持该设置,如果版本较低,考虑升级至最新版本 |
3. 服务器环境问题 | 检查服务器环境,确保PHP版本和配置符合dedecms要求 |
4. 代码错误 | 检查相关代码,确认是否存在语法错误或逻辑错误 |
5. 缺少文件或目录权限 | 确保附件保存目录存在,并具有相应的读写权限 |
6. 系统插件或模板问题 | 尝试禁用插件或更换模板,查看问题是否得到解决 |
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1188363.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复