WordPress更新出现429 Too Many Requests的解决方案-2020年更新
近期WordPress内核更新经常出现429 Too Many Request错误,或者更新过程中发生中断,这是因为近期网络无法稳定访问wordpress.org。
可以通过换源来尝试解决此问题。
可靠的官方源
目前(Wordpress 5.4发布之时)可用的WordPress下载点有3个,分别来自以下官方站点:
- https://cn.wordpress.org/latest-zh_CN.zip(官方中文站)
- https://cn.wp.xz.cn/latest-zh_CN.zip(官方中文下载站)
- https://downloads.wordpress.org/release/zh_CN/latest.zip(官方默认源)
当然,还有非官方分流可用,但使用任何非官方分流都务必要小心谨慎。我们可以令WordPress尝试利用这些分流镜像来完成更新。
更新代码
将下列代码插入主题的function.php即可。
通过修改$opt后的数值,可以切换笔者推荐的几个源。默认设置为2,如果更新失败再换为其他数字即可。
在WordPress自动更新过程时,换源可能引发问题,因此不建议保持此脚本开启状态。完成更新后,可将$opt设为0关闭脚本,或者直接使用/**/注释脚本。
add_filter('site_transient_update_core', function($value){
//根据需求设置数值,设为0关闭本功能
$opt = 2;
if ($opt == 0)
return;
foreach ($value->updates as &$update) {
if($update->locale == 'zh_CN'){
if($opt == 1){
//WordPress中文站-官方
$update->download = 'https://cn.wordpress.org/latest-zh_CN.zip';
$update->packages->full = 'https://cn.wordpress.org/latest-zh_CN.zip';
}
elseif($opt == 2){
//WordPress中文站下载站-官方(推荐)
$update->download = 'https://cn.wp.xz.cn/latest-zh_CN.zip';
$update->packages->full = 'https://cn.wp.xz.cn/latest-zh_CN.zip';
}
elseif($opt == 3){
//本站源(不对外部请求开放,请自行替换自己的链接,谢谢)
$update->download = 'https://www.kamilet.cn/latest-zh_CN.zip';
$update->packages->full = 'https://www.kamilet.cn/latest-zh_CN.zip';
}
else{
//WordPress源站-官方
$update->download = 'https://downloads.wordpress.org/release/zh_CN/latest.zip';
$update->packages->full = 'https://downloads.wordpress.org/release/zh_CN/latest.zip';
}
}
}
return $value;
});