天天绿软 更新快、资源全,发现更多优质资源,就上天天绿软!

WordPress 代码实现外链图片本地化:自动分批处理、Referer 防盗链匹配、媒体库入库

Tmd 更新时间: 26分钟前 分类: 建站教程 人气: (1062) 0个评论

很多 WordPress 站长在采集内容或迁移网站后,文章里会残留大量外链图片。这些图片一旦源站失效、防盗链或限速,网站就会出现裂图。

这个工具可以在后台“工具 → 外链图片本地化”中一键运行,自动扫描文章内容里的外链图片,将其下载到 WordPress 媒体库,并把文章里的图片 URL 替换成本地链接。

只需将以下代码添加进去functions.php即可食用

WordPress代码, WordPress图片批量采集, WordPress图片本地化, WordPress图片采集, WordPress外链图片, WordPress教程, WordPress远程图片

主要特点:

支持 src、data-src、data-original、data-lazy-src 等常见写法

自动分批处理,从 ID 0 开始覆盖全站文章

内置常见图床防盗链 Referer 匹配(新浪、微信、知乎、头条等)

自动跳过站内图片,支持中文 URL、无扩展名 URL

每篇文章处理后会打标记,避免重复处理

实时进度条和失败日志,方便定位问题

适用场景:网站迁移、采集内容后本地化、外链图床不稳定、需要统一管理图片。

注意:操作前请备份数据库和 wp-content/uploads/ 目录;采集他人图片请确认版权授权。

工作流程

后台“工具 → 外链图片本地化”

点“开始自动本地化”

前端 JS 自动循环调用 admin-ajax.php,每次处理 20 篇

每处理一篇,打上 _lei_localized 标记,不会重复处理

全部处理完自动停止,显示累计统计

处理速度与超时

每批 20 篇,批间 300ms

300 多篇文章大约几分钟跑完

如果某批超时,把 $batch_size = 20; 改成 10 或 5

跑的过程中不要关页面

要素 说明

核心功能 外链图片本地化 / 远程图片采集
自动化 自动批量、无需手动点
范围 全站 / ID > 0 / 指定文章类型
技术亮点 防盗链 Referer、媒体库入库、替换链接
适用场景 迁移、采集、外链失效
风险提示 备份、版权、超时

遇到新图床 403,在数组里加一行即可:

'新域名.com' => 'https://新域名.com/',

有些图床反而允许“没有 Referer”的请求。可以测试:
// 把 Referer 设为空字符串
'Referer' => '',

失败日志怎么读

日志 含义 处理
HTTP 403 防盗链 见下面防盗链章节
HTTP 404 图片已删 换源或删图
HTTP 429 请求太频繁 把批间延迟改大
cURL error 6 DNS 解析失败 改服务器 DNS 或 /etc/hosts
cURL error 7 连不上 服务器网络问题
cURL error 28 超时 网络慢或被墙
cURL error 60 SSL 证书问题 代码已 sslverify=false,应该已修
非图片类型:text/html 返回网页 防盗链或被墙
写入媒体库失败 文件格式不允许 看具体错误

注意事项

操作前备份数据库和 wp-content/uploads/

处理 300+ 篇文章,跑一次可能几分钟,别关页面

采集他人图片有版权风险,确认授权

图片在自定义字段、特色图、CSS 背景里,本代码不处理

图片多时建议把 $batch_size 调小,避免超时

想只处理某范围,改 LEI_MIN_POST_ID 即可

想只处理某文章类型,把 SQL 里 post_type='post' 改成你的类型

仅限评论用户阅读此隐藏内容

请先评论

除特别注明外,本站所有文章均为 天天绿软 原创,转载请注明原文链接: WordPress 代码实现外链图片本地化:自动分批处理、Referer 防盗链匹配、媒体库入库
19