WordPress图片本地化插件,WordPress如何实现远程图片自动本地化?
- SEO专用
- 2022-10-31
- 2806热度
- 31评论
nicen-localize-image
nicen-localize-image(Wordpress后台搜索安装插件),是一款用于本地化文章外部图片的插件,支持如下功能:
- 文章发布前通过编辑器插件本地化
- 文章手动发布时自动本地化
- 文章定时发布时自动本地化
- 针对已发布的文章批量本地化。
Github:https://github.com/friend-nicen/nicen-localize-image
Gitee:https://gitee.com/friend-nicen/nicen-localize-image
😁,加我微信【good7341】或机器人微信【nicen_friend】拉你进交流群!
插件推荐
Wp用户行为回放插件:https://nicen.cn/7565.html
功能展示
插件后台:

插件后台

图片本地化(点击放大)
插件提供两种本地化外部图片的模式,两种模式可同时开启,互不冲突;
1. 编辑器本地化插件
启用这个模式之后,会将wordpress文章编辑器切换为经典编辑器,并在编辑器上方新增一个功能图标,点击之后可以自动检测并本地化所有外部图片;

一键检索

一键替换
2. 发布时自动本地化
启用这个模式之后会在文章发布时自动本地化所有外部图片;

自动本地化
推荐使用【编辑器本地化插件】在发布前进行本地化,当图片数量过多或者文件太大【发布时自动本地化】可能会导致请求卡死。
选项说明
1.图片本地化时保存到数据库
不开启的话,本地化的时候下载的图片不会在数据库内新增关联信息;开启之后,本地化的图片可以在媒体库内查看,并且可以重复使用;
2.发布时图片自动添加alt属性
img标签指定alt属性之后对seo较为友好,您可以选择指定alt的值为文章标题,或者文章分类;
3.本地化保存路径
代表本地化下载图片时,文件的保存路径(文件夹要求可写);
字体文件
更新日志
v3.0.1
- 新增本地化可以处理本地图片(webp转换、oss上传)
- 修复日志结果偶发记录错误的问题
v2.1.10
- 新增批量本地化可以自定义文章类型
v2.1.9
- 新增恢复插件默认配置的功能
v2.1.8
- 修复webp类型图片,图片类型检测异常的问题
v2.1.7
- 修复选择Cos保存到媒体库的图片,插入文章时链接格式异常的问题
v2.1.6
- 修复开启本地化后设置第一张图片为特色图片时,如果只有一张图片时不会设置特色图片的问题
- 新增设置项“重新下载本地化过的链接”,开启后将忽略本地缓存,强制重新下载已经本地化过的图片链接
v2.1.5
- 修复本地化时,//开头的图片检测不到的问题
v2.1.4
- 更新引入的外部js库的cdn源
v2.1.3
- 修复某些特殊的图片链接会本地化失败的问题
v2.1.2
- 修复某些情况下本地化失败会导致替换异常的问题
v2.1.1
- 优化图片下载速度
v2.1.0
- 新增对象存储支持七牛云
- 新增对象存储可选按年月日保存文件
- 新增对象存储可选是否处理媒体库上传的文件
v2.0.12
- 新增支持绕过某些特殊的防盗链
- 新增可设置本地化后清空IMG标签除src之外的其它属性
v2.0.11
- 修复webp转换导致运行异常的BUG
v2.0.10
- 修复开启webp转换后原图不会删除的BUG。
- 新增特色图片可以设置使用第一张图
v2.0.9
- 新增开启webp转换后,可以设置指定类型的图片不进行webp转换
- 新增开启图片水印后,可以设置指定类型的图片不添加水印
v2.0.8
- 修复指定百分比时透明水印变黑
- 修复开启保存到数据库会导致水印重复添加
v2.0.7
- 修复水印功能使用图片水印丢失透明度的问题
v2.0.6
- 修复定时任务日志显示异常的问题
- 修复某些情况下产生异常报错的情况
v2.0.5
- 重构定时任务,发布时将不依赖于wp的定时任务。
- 定时任务支持设置时间范围,自动随机生成下一次发布时间。
v2.0.4
- 支持媒体库上传时,添加水印和上传对象存储
- 新增媒体库可以直接选取对象存储的图片
v2.0.3
- 修复启用webp转换功能后,无法正常添加水印的问题。
v2.0.2
- 新增图片可保存为webp文件
- 新增水印可自定义图片水印的百分比大小
v2.0.1
- 新增自定义网络请求代理
v2.0.0
- 新增本地化后,图片上传到对象存储(阿里云、腾讯云)
- 新增定时任务可选单次定时发布的文章数量和状态
- 新增编辑器插件本地化可以并发下载(默认同时下载5张图片)
- 新增批量本地化并发下载,可单独设置需要同时本地化的文章数量
- 新增本地化图片保存到数据库时,可选是否生成缩略图
- 新增本地化图片添加域名时,可指定需要添加的域名
- 新增批量本地化时,可选待审、定时任务等其它文章状态
- 新增字体库列表,移除水印功能自带字体文件,在水印功能页点击下载字体自行下载
- 新增水印功能可设置过滤规则,对于长宽小于指定值的图片不添加水印
- 新增删除文章时可选是否自动删除文章关联的图片附件
- 修复编辑器插件本地化时,图片数量小于并发数时,会导致本地化链接不会替换的问题
- 修复图片水印模式下,字体文件不存在时,会导致报错的问题
- 修复图片粘贴自动本地化上传时,特殊情形下会出现报错的问题
- 修复存在空格时,会导致白名单功能失效的问题
v1.4.1
- 修复编辑器插件存在相同图片链接时,只会替换一次的问题
- 修复复制网页图片时,触发粘贴图片上传,会导致重复上传生成两张图片的问题
- 修复本地化图片验证图片链接状态码,没有模拟Referer导致触发防盗链,刚好链接返回异常状态码时,会本地化报错的问题。
- 新增本地化时是否记录日志的选项,关闭后将不在记录日志。
- 修复定时任务发布时,修改文章时间发布时间为定时任务触发时间,不生效的问题。
- 增加文章定时发布任务有效性检测,防止被其它插件删除定时任务后,定时发布无法正常运行的问题
v1.4.0 Pro
- 修复分类名包含特殊字符时,批量本地化时,分类无法正常显示的问题
- 新增系统时间校准的功能开关,定时任务页面将展示当前系统时间和默认时区,避免由时区导致定时任务无法正常运行
- 新增图片本地化后自动关联文章
- 新增图片本地化后按照年月日存放在指定的本地化图片保存目录
- 更新img匹配规则,兼容一些不规则的img标签
- 修复开启图片本地化时保存到数据库功能后,本地化报错的问题
- 新增编辑器内可直接粘贴截图,并自动上传到服务器
- 新增自定义referer,绕过图片防盗链
v1.3.91
- 修复编辑器插件存在相同图片链接时,只会替换一次的问题
- 修复本地化图片验证图片链接状态码,没有模拟Referer导致触发防盗链,刚好链接返回异常状态码时,会本地化报错的问题。
- 新增本地化时是否记录日志的选项,关闭后将不再记录日志。
v1.3.9
- 修复分类名包含特殊字符时,批量本地化时,分类无法正常显示的问题
- 新增系统时间校准的功能开关,定时任务页面将展示当前系统时间和默认时区,避免由时区导致定时任务无法正常运行
- 新增图片本地化后自动关联文章
- 更新img匹配规则,兼容一些不规则的img标签
- 修复开启图片本地化时保存到数据库功能后,本地化报错的问题
- 优化插件后台的样式
v1.3.83
- 修复其他主题或插件全局加载Vue时会导致插件后台无法正常加载的问题(内置js文件,插件大小会增加2M)
- 将指定文件类型修改为图片本地化时自动检测文件类型;
- 修复本地化保存到数据库文件显示异常的问题;
- 新增可设置图片本地化后,自动将图片设置为文章的特色图片;
- 新增自动给图片添加alt属性时,会将空值的alt重新设置;
- 修复图片压缩时会重复下载两次的问题;
- 文章发布时自动本地化后不再进行弹出提醒,处理结果会跟随wordpress默认提示进行输出;
v1.3.8
- 修复设置界面,日期选择时异常报错导致无法清除的问题。
v1.3.7
- 新增定时任务可以指定日期范围、每日的时间范围进行定时发布。
- 新增批量本地化时可选文章状态,可指定不限、草稿、已发布等文章状态进行批量本地化。
- 优化批量压缩图片功能。
v1.3.6
- 修复edit_themes权限导致部分情况下无法显示配置页面的问题:edit_themes -> manage_options
v1.3.5
- 修复插件日志无法清空的问题
- 更新图片压缩页面加载目录时异步加载,避免文件数量太多导致卡死;
v1.3.4
- 修复不规范的img标签,不会被匹配到的问题。
v1.3.3
- 修改代码适配wordpress插件商店规范;
- 图片压缩完成后自动刷新显示的目录;
- 修改网络请求超时时间为120s;
v1.3.1 beta
- 新增批量本地化时,可以指定文章分类,指定文章发布时间范围;
- 新增域名白名单,插件将忽略白名单内的域名,不会进行本地化;
- 新增自定义图片保存类型功能
- 新增图片批量压缩功能;
- 接口增加随机时间戳;
- 优化自动发布文章的定时任务
- 修复压缩图片时图片读取失败的问题
- 修改代码适配wordpress插件商店规范
v1.2.0 beta
- 增加图片本地化日志收集的功能,随时了解本地化失败的原因;
- 新增定时发布文章的功能,可设置定时发布时是否本地化文章图片;
- 新增批量本地化已发布文章内外部图片的功能;
- 新增插件更新日志,便于用户及时响应插件更新;
- 新增插件BUG在线反馈的功能,便于及时修复问题;
- 修改接口密钥为安装插件后随机生成,防止接口被恶意利用;
- 新增图片本地化时是否添加网站域名的功能开关,开启后本地化后的图片链接为包含域名的完整路径;
v1.1.3
- 本地化下载图片的方式调整为curl获取,并模拟referer绕过防盗链;
- 修改插件全局变量、函数的命名前缀;
- 修复没有判断图片下载结果导致的异常问题;
怎么下载最新版
免费版已经停止更新新功能了,后面的都是Pro版
Pro版本怎么购买
时间不会改成自动发布的时间
收到,确实有,待我修复
你说的这个远程POST发布的文章图片本地化。
简单说就是,你POST请求成功之后,拿到文章的ID,再请求一遍这个本地化接口,就实现了你说的POST发布自动本地化。
更简单一点,你可以在你这个POST接口内去触发wp的save_posts钩子,这样发布时就会自动触发本地化。
刚刚测试了下,使用定时发布功能,可以实现同样的效果。
6.1版本中,分类没有正确显示。
远程图片后,图片数据没有和文章进行关联。
插件的所有功能都是接口,接口列表我可以在下次更新的时候列出来。
缩略图我记录一下,下次更新的时候加上这个功能
可以加入远程POST发布的文章图片本地化吗?
还有批量本地化开始ID,可以自动记录吗?
比如开始ID默认值0,结束ID是默认最新的文章的ID
比如,点击开始批量本地化,文章进行到ID 30 手动停止或者强制停止了。
那么批量本地化ID的默认值就是30。结束ID是默认最新的文章的ID
另外 批量本地化可以做个接口吗?
在接口中可以设置,每次触发本地化几篇文章。
比如触发一次,本地化N篇文章,可以N值可以设置。
使用外部触发定时触发的方式进行执行
比如,我使用触发接口,外部触发 30秒 触发一次。
文章的图片自动本地化
文章本地话的ID可以自动记录 和上面写的一样。
比如第一次触发,ID是1,第二次是ID2.以此类推。
也要考虑到文章结束ID,以最新文章ID截至。
比如我这边发布1000个文章,或者每天发布几十个文章,这样话可以慢慢图片自动本地化。可以无人值守。
实现确实可以,只是对于插件来说这个功能并不大众化,我得评估一下看要不要搞


大众呀,其实这个就是使用外部接口触发批量本地化功能。
使用第三方软件发布文章后,在使用外部触发接口本地化文章。
这种功能很好用的。。
插件提供了文章定时发布的功能,你可以选择条件设置文章定时发布时自动本地化。
实现无人值守是没问题的。
嗯,我知道有这个功能,但是这样有个问题。常规发布流程一般都是采集几千个文章,然后每天定时发布几十篇,而不是把几千篇文章都上传。
并且现在Wordpress还有个BUG,发布的文章有概率会进回收站,你有遇到吗?
插件本身就是一堆接口实现,你说的这些接口差不多都有。
你F12看下请求记录,就能看到接口了(接口设置密钥验权,在安装的时候自动按照时间戳初始化的,密钥就是调用接口的凭证)
比如下面这个
https://nicen.cn/?nicen_make_local_batch=1&private=保密&batch_id=733
就是插件的接口之一,请求它就代表本地化文章ID为733的文章内所有的外部图片。
这个可以做成我说的那种友好的接口吗?
只要有个固定的接口,触发就可以了。
类似这种 您的wordpress触发定时任务接口为:https://www.xxxx.com/wp-cron.php
我左思右想,没搞明白你说的关联到文章是什么
好的,在媒体中,有个上传至,你在后台看看。还有可以支持第三方存储吗?我在后台设置的腾讯COS。
图片本地化后,没有上传到COS中。
cos插件你用的哪个,下次更新可以试着兼容
https://cn.wordpress.org/plugins/tencentcloud-cos/
这个腾讯的COS插件。
后台菜单-媒体-媒体库-切换列表显示-图片右边有个 上传至
提取文章中的图片作为特色图片 这个功能可以加入。
涨知识了….,建议已收到,感谢反馈。
文章关联图片 = 特色图片 ,你说的是特色图片?
突然发现不对,这篇文章是我用来seo的,没有对外展示,你咋找到的


请问插件用的几点几的版本,图片数据没有和文章进行关联,这个指的是?


就在插件首页中,可以看到的。在媒体库中,图片没有显示上传至。另外,好像没有自动生成缩图?
默认不保存到数据库(不添加到媒体库),你得打开那个保存到数据库的开关。
插件只会保存原图,不会生成缩图。
在媒体,上传至,
图片本地化时保存到数据库这个我打开了,在媒体库可以看到图片,但是没有关联到文章,可以生成缩略图吗?
你这个关联到文章,指的是不是插入到文章没显示