最新消息:本站所有跳转向bbs.ykit.cn的附件将全面停止,附件已转移到https://www.qingsj.com

wordpress上传文件,自动重命名图片和附件避免重复或因中文乱码

wordpress教程 有客 3232浏览 0评论

wordpress对于上传的文件默认不改变文件的原名称,有客发现有些朋友在使用wordpress的时候可能由于文件量大而不愿意逐个重命名文件,附件或者图片直接上传的话,

可能会导致中文文件名的文件出现乱码或其它问题,
如果图片和附件保存在同一个目录,也可能导致文件名重复而被覆盖。之前使用zblog、dedecms等程序时,

系统都会对上传的文件自动重命名,搜索发现可以通过修改wordpress源代码实现文件自动重命名。

操作方法:

在wordpress程序的wp-admin/includes/目录中找到file.php文件,并进行编辑,在327行左右找到以下代码:

// Move the file to the uploads dir
$new_file = $uploads['path'] . "/$filename";
if ( false === @ move_uploaded_file( $file['tmp_name'], $new_file ) )
return $upload_error_handler( $file, sprintf( __('The uploaded file could not be moved to %s.' ), $uploads['path'] ) );

将其替换为

// Move the file to the uploads dir
$new_file = $uploads['path'] . "/".date("YmdHis").floor(microtime()*1000).".".$ext;
if ( false === @ move_uploaded_file( $file['tmp_name'], $new_file ) )
return $upload_error_handler( $file, sprintf( __('The uploaded file could not be moved to %s.' ), $uploads['path'] ) );

整体代码其实就是替换掉了”/$filename”;

保存后覆盖原文件,那么上传文件就会以“年月日时分秒+千位毫秒整数”的格式重命名文件了,如“20121023122221765.jpg”。

转载请注明:有客帮 » wordpress上传文件,自动重命名图片和附件避免重复或因中文乱码

您必须 登录 才能发表评论!