Я пишу функцию, которая должна обновлять цену для всех продуктов woocommerce. Данные о ценах, которые я получу от amazon, используя amazon api, который имеет определенный предел x запросов в секунду, поэтому мне придется спать на каждомпетля.Я планирую запустить эту функцию как задание cron.Приведенная ниже функция является лишь примером того, что я планирую сделать, поэтому, пожалуйста, не обращайте внимания на то, что он пропустил объявление переменной и т. д.
Я понимаю, что могу увеличить ограничение времени ожидания php, но я представляю себе, что если у меня есть сотни или тысячипродукты и в каждом запросе мне нужно будет поспать некоторое время, чтобы избежать регулирования запросов, поэтому для обновления всех продуктов в этом случае может потребоваться несколько часов, поэтому я задаюсь вопросом, какое самое лучшее и простое решение - сохранять эту функцию в течение нескольких часов и останавливаться последостижение последнего идентификатора в массиве $ products_ids?
function text(){
foreach ($products_ids as $products_id) {
//apm_single_lookup func do an API call which has max query/sec limit thats why i added the next sleep
$lookup_data = apm_single_lookup($eu_asin, $amazon_domain);
update_post_meta($products_id, $field_name, esc_attr($lookup_data['price']));
sleep(1);
}
}