#
网站源码
2024年4月17日
wordpress发布文章自动把远程图片保存到本地的两个方法
By 壹资源网
3 MIN READ
现今,使用WordPress程序搭建个人站点蔚然成风,其简易的操作界面与高度的用户友好性备受青睐,使得即便对编程代码知之甚少的人也能轻而易举地创建出如“楚狂人博客”般独具特色的个人网站。
在此背景下,今日特与诸位探讨两种实用技巧,旨在解决在WordPress发布文章时自动将远程图片导入本地服务器的难题。众所周知,尽管诸多网站并非全然依赖原创内容,但在转载优质文章的过程中,常遭遇源站对图片实施防盗链保护,导致逐图下载、手动上传的过程繁琐不堪。所幸,下述两种方法能有效地简化这一流程,助您一键式将心仪文章中的图片无缝整合至自家网站,省时省力,提升内容管理效率。
一、第一个方法是使用插件:QQworld

方法二:使用自定义代码
如果你更倾向于使用自定义代码来实现这一功能,你可以使用以下代码将远程图片自动保存到本地。在你的主题的functions.php文件中加入以下代码:
function auto_save_remote_images($content) {
preg_match_all('/<img[^>]+src="([^"]+)"[^>]*>/', $content, $matches);
if ($matches) {
foreach ($matches[1] as $img_url) {
$upload_dir = wp_upload_dir();
$img_path = $upload_dir['path'] . '/' . basename($img_url);
$img = file_get_contents($img_url);
file_put_contents($img_path, $img);
$content = str_replace($img_url, $upload_dir['url'] . '/' . basename($img_url), $content);
}
}
return $content;
}
add_filter('the_content', 'auto_save_remote_images');
这段代码将在文章发布时自动将远程图片保存到本地服务器,并更新文章内容中的图片链接。