Я использую ACF с Reapeters.
Я пытаюсь добавить строку в ретранслятор через update_field, однако, когда я открываю пост, чтобы подтвердить, работает ли он в админке WordPress, он продолжал загружаться и выдал мне эту ошибку:
Fatal error: Maximum execution time of 30 seconds exceeded.
Когда я отображаю $ value, я получаю это: «bool (false)», вот мой код:
foreach($dishes as $current_dish)
{
$local_category_id = strval($current_dish['id_CategoriaTicket']);
if($local_category_id == $categoryId)
{
$prueba = $current_category->post_title;
$new_dish = array(
'post_title' => $current_dish['Descripcion'],
'post_status' => 'publish',
//'post_content' =>'',
'post_type' => 'products'
//'post_author' => $user->ID
);
$post_id = wp_insert_post( $new_dish );
global $cpt_onomy;
$cpt_onomy->wp_set_post_terms( $post_id , $prueba, 'categories');
update_post_meta($post_id, 'product_type', "Platillo");
$field_key = 'product1';
$value = get_field($field_key, $post_id);
$value[] = array("price_id" => "2",
"price" => "30",
"location" => 2
);update_field($field_key, $value, $post_id );
exit();
}
}
проблема в том, что ключ поля, который вы используете, не является правильным.
Вам нужно перейти в меню пользовательских полей и в верхнем меню отобразить идентификаторы полей.
затем скопируйте идентификатор ключа поля повторителя и используйте его в методе update_field.
Если вы используете имя поля, вы получите бесконечный цикл и фатальную ошибку из-за утечки памяти.
Других решений пока нет …