Bạn có thể nối option_update_core
và chỉnh sửa url cập nhật, như một plugin bạn có thể làm một cái gì đó như thế này (Hãy nhớ tắt plugin sau khi cập nhật wordpress)
add_filter('option_update_core','wpse_26750');
add_filter('transient_update_core','wpse_26750');
function wpse_26750($options){
global $wp_version;
$updates=array(
'2.5'=>'http://wordpress.org/wordpress-2.5.zip',
'2.7.1'=>'http://wordpress.org/wordpress-2.7.1.zip',
'2.8'=>'http://wordpress.org/wordpress-2.8.zip',
'2.8.1'=>'http://wordpress.org/wordpress-2.8.1.zip',
'2.8.3'=>'http://wordpress.org/wordpress-2.8.3.zip',
);
$currentUpdate=$options->updates[0];
//Add Previous updates skipping the ones already passed
foreach($updates as $version=>$updateUrl){
if( version_compare($wp_version,$version) < 0){
$update=new StdClass();
$update->response='upgrade';
$update->url='http://wordpress.org/download/';
$update->package=$updateUrl;
$update->current=$version;
$update->locale=$options->updates[0]->locale;
$options->updates[]=$update;
}
}
unset($options->updates[0]);
//Restore latest update
$options->updates[]=$currentUpdate;
return $options;
}
Bắt đầu từ 2.8 bạn cũng cần phải treo trên transient_update_core
như get_transient
được sử dụng thay vì get_option
Ngoài ra, có phiên bản kiểm tra ở đây, vì vậy không các phiên bản thấp hơn bản thân được hiển thị. Vấn đề duy nhất (chính?), Là danh sách các phiên bản cần được thêm thủ công.