Z mojego zrozumienia, w jaki sposób WordPress aktualizuje rdzeń i wtyczki, wychodzi to, że co 12 godzin wychodzi i szuka aktualizacji. Kiedy ustawia się ten czas? 12 godzin od pierwszej instalacji? Pytam o to, ponieważ przy użyciu filtra automatycznej aktualizacji add_filter( 'auto_update_plugin' );
wtyczek teoretycznie można zezwolić tylko na aktualizację wtyczek między określonymi czasami, ale jeśli ten określony czas nie mieści się w tym 12-godzinnym oknie, wtyczki nigdy nie będą aktualizowane.
W ten sposób zostawiam pytanie w moim tytule, które brzmi: Jak można zmienić częstotliwość, z jaką WordPress szuka aktualizacji lub jak określić konkretny czas automatycznej aktualizacji?
Dla zainteresowanych, oto filtr, z którym zadzieram, sprawdza, czy JEŚLI jest poniedziałek - piątek w godzinach 8:00 - 17:00:
function maybe_update_plugins(){
date_default_timezone_set('Your Timezone Here');
$localAssoc = localtime(time(), true);
$update = false;
/***
/* tm_wday[0] = Sunday
/* tm_wday[6] = Saturday
***/
if(
$localAssoc['tm_wday'] > 0 && $localAssoc['tm_wday'] < 6 &&
$localAssoc['tm_hour'] > 7 && $localAssoc['tm_hour'] < 17
){
$update = true;
}
return $update;
}
add_filter( 'auto_update_plugin', 'maybe_update_plugins' );
Edytuj Jako czysty sidenote, wygląda na to, że ten filtr jest uruchamiany za każdym razem, gdy aktualizacja wtyczki, wiele aktualizacji wtyczek, wiele uruchomień filtra
źródło
Odpowiednie funkcje
wp_update_plugins()
iwp_maybe_auto_update()
są uzależnione od zdarzeń wp-cron o tej samej nazwie, uruchamianych według harmonogramu dwa razy dziennie.Logicznie, początkowy harmonogram zacznie tykać od momentu pierwszego uruchomienia. Ze względu na implementację wp-cron (nie będącą prawdziwym cronem i uruchamianym przez wizyty w witrynie, a nie zegar serwera), będzie również „dryfował” za każdym razem, gdy faktyczny wp-cron wystrzeli po czasie, w którym powinien.
Sprawdzanie aktualizacji wtyczek jest również uruchamiane częściej w niektórych obszarach administracyjnych, takich jak lista wtyczek (dzięki czemu rzadziej patrzysz na nieaktualne informacje).
Nad głową nie widzę eleganckiego sposobu na umieszczenie go w określonym korytarzu czasowym. Zmiana harmonogramów jest dość łatwa, rozliczenie dryfu nie jest do końca.
Jeśli jest to w jakikolwiek sposób wymaganie krytyczne dla mizisonów, lepiej byłoby obsłużyć go za pomocą prawdziwego crona serwera i zewnętrznego narzędzia do faktycznej aktualizacji, takiego jak funkcja aktualizacji wp-cli lub zarządzanie wtyczkami przez Composer.
źródło
wp-cron
wywoływane są tylko niektóre wyświetlenia strony administratora lub zwykłe odsłony? Dzięki!init
wystrzeliwanie haka)