由于国人很少有在上传图片前将图片名重命名为英语的,所以自动重命名对于WP来说尤为重要,特别是LINUX的不支持中文名的。

WordPress上传多媒体的代码都存放于\wp-admin\includes\里面的file.php,打开这个文件,$filename = wp_unique_filename( $uploads['path'], $file['name'], $unique_filename_callback );// Move the file to the uploads dir,在此句$filename赋值前添加代码如下:

  1. $time=date("YmdHis");$type_change = array('image'=>'.');$file_type = strtr($file['type'],$type_change);
  1. $file['name'] = $time."".mt_rand(1,100)."".$file_type ;

之后代码如下:

  1. $time=date("YmdHis");$type_change = array('image'=>'.');$file_type = strtr($file['type'],$type_change);
  2. $file['name'] = $time.''.mt_rand(1,100).''.$file_type ;
  3.  
  4. $filename = wp_unique_filename( $uploads['path'], $file['name'], $unique_filename_callback );
  5.  
  6. // Move the file to the uploads dir

保存下,上传多媒体后文件就自动重命名为2014012315450088格式,年份月份日期时间和随机数字。

下面是具体的解决思路:

首先看一下一般的PHP上传照片的思路,确认类型=》多媒体重命名=》把文件上传到指定目录,成功上传后输出上传图片的预览用到的函数。

WordPress之所以不能显示中文的多媒体问题出在第二步,缺少相应的重命名。我们的思路就是在Wordpress原有的上传步骤中添加一步重命名的,这里是重命名为上传时间+随机数字。

http://www.cnblogs.com/huangcong/archive/2012/02/29/2372922.html

WordPress 中文图片 上传 自动重命名的更多相关文章

  1. WordPress 实现附件上传自动重命名但不改变附件标题

    WordPress 上传媒体文件时,默认会保持文件名不变.如果上传文件名中包含中文字符,则会造成部分浏览器显示的文件 URL 疑似乱码甚至无法访问.网上流行较广的是通过注册  wp_handle_up ...

  2. django如何给上传的图片重命名(给上传文件重命名)

    1.先在你项目中添加一个文件夹如:system 在文件夹下添加__init__.py 和storage.py文件,并在storage.py中添加如下代码: # -*- coding: UTF-8 -* ...

  3. dnmp(docker的lnmp)安装WordPress之后图片上传问题 问题:图片上传大小问题解决和 报错413 Request Entity Too Large

    首先是提示超过图片尺寸和大小, 最后发现都是图片大小的问题, 需要修改php的最大上传size 修改之后查看php配置  已经生效  但是还是报错, 提示返回不是合法的json,  查看控制台, 报错 ...

  4. 改变wordpress图片上传后的压缩质量

    WordPress 在图片上传后会默认压缩图片质量为原来的 90%,这样做的好处可以极大的加快页面的载入速度与缩小图片大小所占服务器空间. 如果希望 100% 原质量怎么办呢?如何禁止 WordPre ...

  5. java 图片上传

    代码是最有力量的,嘎嘎 @CrossOrigin@ApiOperation(value = "上传图片", notes = "上传图片", httpMethod ...

  6. JQuery的ajaxFileUpload图片上传初试

    本案例主要说讲使用ajaxFileUpload实现图片的异步上传. 1.html代码部分 这里的代码,主要设置一下name,后台获取时候要用到,还有设置一个onchange的事件对应的方法:ajaxF ...

  7. nodeJs学习过程之一个图片上传显示的例子

    目标 1. 在浏览器地址栏输入“http://demos/start”,进入欢迎页面,页面有一个文件上传表单: 2. 选择一张图片并提交表单,文件被上传到"http://demos/uplo ...

  8. 纯代码实现WordPress上传图片自动重命名的方法

    在我们使用 WordPress 发布文章时,经常都需要添加图片.多媒体什么的.然而,大家都知道 WordPress 是舶来物,对于中文用户来说,我们都会把图片命名为中文的,由于 WordPress 机 ...

  9. MVC图片上传详解 IIS (安装SSL证书后) 实现 HTTP 自动跳转到 HTTPS C#中Enum用法小结 表达式目录树 “村长”教你测试用例 引用provinces.js的三级联动

    MVC图片上传详解   MVC图片上传--控制器方法 新建一个控制器命名为File,定义一个Img方法 [HttpPost]public ActionResult Img(HttpPostedFile ...

随机推荐

  1. Simple Tips for Collection in Python

    I believe that the following Python code is really not hard to understand. But I think we should use ...

  2. 用数据池来实现socket并发

    最终目标:启动服务后可以有无数个访问,并且可以随时输入,服务端使用进程池. 服务端 from socket import * import os,time from concurrent.future ...

  3. Android:日常学习笔记(6)——探究活动(3)

    Android:日常学习笔记(6)——探究活动(3) 活动的生命周期 返回栈 Android中的活动是可以叠加的,我们每启动一个新活动,就会覆盖在原来的活动上,点击Back以后销毁最上面的活动,下面的 ...

  4. 查看linux系统版本信息(Oracle Linux、Centos Linux、Redhat Linux、Debian、Ubuntu)

    一.查看Linux系统版本的命令(3种方法) 1.cat /etc/issue,此命令也适用于所有的Linux发行版. [root@S-CentOS home]# cat /etc/issue Cen ...

  5. springboot-数据库

    Spring-data-jpa jpa定义了一系列持久化的标准,比如hibernate就实现了这一标准. Springboot 的jpa就是hibernate的整合. 在pom文件中增加配置: < ...

  6. 【HackerRank】Lonely Integer

    There are N integers in an array A. All but one integer occur in pairs. Your task is to find out the ...

  7. valn 配置

    内核修改: /device drivers/Network device support/MAC-VLAN support 1.创建目录和文件#cd /usr#mkdir vlan#cd vlan#c ...

  8. mysql sql的执行顺序

    转:http://blog.csdn.net/u014044812/article/details/51004754 关于sql和MySQL的语句执行顺序(必看!!!) 原创 2016年03月29日 ...

  9. libstdc和glibc的一些共享库问题

    1./usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found错误的解决 原因是没有GLIBCXX_3.4.15版本,或是更高的版本输入命令 ...

  10. Hearbeat + Nginx 安装配置

    Hearbeat + Nginx 安装配置 实验环境 两台主机:Linux Centos 6.5 32位 主 服务端:Hearbeat + Nginx eth0:192.168.1.160(公网) e ...