Automattic\WooCommerce\Internal\OrderWithdrawal
OrderWithdrawalFormProcessor::apply_rate_limits
Set or clear the order withdrawal submission rate limits.
Метод класса: OrderWithdrawalFormProcessor{}
Хуков нет.
Возвращает
bool. True if all rate limits were applied, false otherwise.
Использование
// private - только в коде основоного (родительского) класса $result = $this->apply_rate_limits( $rate_limit_ids, $delay ): bool;
- $rate_limit_ids(string[]) (обязательный)
- Rate limit IDs.
- $delay(int)
- Delay in seconds for the rate limit. Use -1 to clear the rate limit.
По умолчанию:self::RATE_LIMIT_DELAY
Код OrderWithdrawalFormProcessor::apply_rate_limits() OrderWithdrawalFormProcessor::apply rate limits WC 11.2.2
private function apply_rate_limits( array $rate_limit_ids, int $delay = self::RATE_LIMIT_DELAY ): bool {
$applied_rate_limit_ids = array();
foreach ( $rate_limit_ids as $rate_limit_id ) {
if ( ! WC_Rate_Limiter::set_rate_limit( $rate_limit_id, $delay ) ) {
foreach ( $applied_rate_limit_ids as $applied_rate_limit_id ) {
WC_Rate_Limiter::set_rate_limit( $applied_rate_limit_id, -1 );
}
return false;
}
$applied_rate_limit_ids[] = $rate_limit_id;
}
return true;
}