【问题标题】:WordPress: rename all filenames with special characters and sync with databaseWordPress:用特殊字符重命名所有文件名并与数据库同步
【发布时间】:2014-04-28 19:41:50
【问题描述】:

事实证明,我的客户端拥有的网络主机不允许任何带有特殊字符的文件名(在本例中为瑞典字符 å、ä、ö)。由于他们已经准备好网站内容并上传了数十张图片,我需要以某种方式批量重命名这些文件,并将其与数据库同步。考虑到我没有对服务器的 SSH 访问权限,最快的选择是什么?更新 WordPress 的帖子附件需要哪些步骤?

编辑:尝试了插件媒体文件重命名器,但由于某种原因,它没有选择具有特殊字符的文件中的单个文件。

【问题讨论】:

  • 你找到解决方案了吗,改变了文件名和数据库条目?

标签: wordpress special-characters filenames


【解决方案1】:

我找到了这个@Wordpress Support page 的答案。

您可以通过将此脚本添加到您的主题 function.php 文件来解决此问题:

add_filter('sanitize_file_name', 'sa_sanitize_spanish_chars', 10);

函数 sa_sanitize_spanish_chars ($filename) {
    $spanish_chars = array('/á/', '/é/', '/í/', '/ó/', '/ú/', '/ü/', '/ñ/', '/Á /'、'/É/'、'/Í/'、'/Ó/'、'/Ú/'、'/Ü/'、'/Ñ/'、'/º/'、'/ª/' );
    $sanitized_chars = array('a', 'e', 'i', 'o', 'u', 'u', 'n', 'A', 'E', 'I', 'O', ' U', 'U', 'N', 'o', 'a');
    $friendly_filename = preg_replace($spanish_chars, $sanitized_chars, $filename);
    返回 $friendly_filename;
}

这只增加了对西班牙特殊字符的支持,所以如果你想清理瑞典字符,你需要在两个数组上都添加它们。

希望对你有帮助!

【讨论】:

  • 只是添加它确实更新了已上传和更新的文件以及数据库?
  • 我还需要现有图像的解决方案
  • 这个 sn-p 所做的是在上传时清理文件名。它不会更新现有文件 - 因此,为了使其正常工作,您需要重新上传它们。
  • 这不是现有图像的解决方案
猜你喜欢
  • 2018-12-25
  • 1970-01-01
  • 2015-02-09
  • 2019-06-24
  • 2017-11-13
  • 1970-01-01
  • 2016-05-16
  • 2014-04-17
  • 1970-01-01
相关资源
最近更新 更多