在织梦DedeCMS中,实现图片按月存放的方法主要涉及修改系统中的代码和配置文件,以下是详细的步骤和方法:
一、修改dedecollection.class.php文件
1、打开include目录中的dedecollection.class.php文件:
找到以下代码段:
//获得下载媒体的随机名称 function GetRndName($url,$v) { global $cfg_image_dir,$cfg_dir_purview; $this>mediaCount++; $mnum = $this>mediaCount; $timedir = "c".MyDate("ym",time()); // 注意这里将"ymd"改为"ym" //存放路径 $fullurl = preg_replace("//{1,}/","/",$cfg_image_dir."/"); if(!is_dir($GLOBALS['cfg_basedir']."/$fullurl")) { MkdirAll($GLOBALS['cfg_basedir']."/$fullurl",$cfg_dir_purview); } $fullurl = $fullurl.$timedir."/"; if(!is_dir($GLOBALS['cfg_basedir']."/$fullurl")) { MkdirAll($GLOBALS['cfg_basedir']."/$fullurl",$cfg_dir_purview); }
修改MyDate("ymd",time())
为MyDate("ym",time())
,这样图片就会按照月份进行存放。
修改后台及远程下载存放方法
1、后台上传文件按月存放:
打开后台目录dede(默认为dede,如果你改过请找到对应的文件夹)。
打开文件media_add.php
,找到如下代码(默认在第25行):
$dpath = MyDate("ymd",$uptime);
将其修改为:
$dpath = MyDate("ym",$uptime);
这样在以后后台上传文件时就会按月存放了。
2、下载远程图片按月存放:
同样在后台,打开文件dede/inc/inc_archives_functios.php
,找到如下代码(默认在第96行):
$imgUrl = $cfg_uploaddir.'/'.MyDate("ymd",time());
将其修改为:
$imgUrl = $cfg_uploaddir.'/'.MyDate("ym",time());
以后图片本地化的附件就会按月保存。
相关设置项调整
在织梦DedeCMS v5.5后台,系统>系统基本参数>附件设置,有一个设置项“附件保存形式”,默认的值是ymd
(年月日的意思),将其改成ym
即可按月保存。
FAQs
1、Q: 修改后的图片存放路径是否会立即生效?
A: 是的,一旦你按照上述步骤修改了代码并保存,新的图片上传和远程下载都会按照新的规则(按月)进行存放。
2、Q: 如果我想进一步自定义存放规则,比如按季度或年份,应该如何操作?
A: 你可以通过修改上述代码中的MyDate()
函数的参数来实现,如果你想按季度存放,可以将MyDate("ym",time())
修改为MyDate("yq",time())
;如果想按年份存放,可以修改为MyDate("Y",time())
,然后确保相应的目录创建逻辑也进行相应的调整。
通过以上步骤,你可以成功地在织梦DedeCMS中实现图片按月存放的功能,这将有助于更好地管理网站资源,提高查找和管理效率。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1228624.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复