2014-05-19 3 views
1

Я пытаюсь разрешить пользователям публиковать сообщения из переднего конца во вложенное поле повторителя ACF.Поле обновления ACF в поле вложенного ретранслятора

У меня есть вспомогательные поля в первой записи репитера. Но я не могу понять, как правильно работать вложенной репитер.

Вот код, который я до сих пор:

$event_field_key = 'field_535e6b9ffe3da'; 

$events[] = array(
    'start-date' => $startDate, 
    'end-date'  => $endDate, 
    'notes'   => $_POST['p'.$p.'-notes'], 
    'start-end-times' => array(
     'start-time' => '09:00', // would be dynamic 
     'end-time' => '17:00' // would be dynamic 
    ) 
); 

update_field($event_field_key, $events, $post_id); 

Я не уверен, если я могу просто гнездо другой array там, или если мне нужно сделать что-то другое.

[ОБНОВЛЕНИЕ]

Я только что сделал это, и это делает ввод в первую строку:

$event_field_key = 'field_535e6b9ffe3da'; 

$events[] = array(
    'start-date' => $startDate, 
    'end-date'  => $endDate, 
    'notes'   => $_POST['p'.$p.'-notes'], 
    'start-end-times' => array(
     'start-time' => '9:00', 
     'end-time' => ' 17:00' 
    ) 
); 

update_field($event_field_key, $events, $post_id); 

Тем не менее, этот код помещает значение строки 1 и как 9 и строка 2 значения как 1 ,

Так он выглядит:

Row 1: start time: 9, end time: 9 Row 2: start time: 1, end time: 1

Я не могу найти какую-либо документацию по этому вопросу, но, похоже, что это возможно, просто случай выяснить, синтаксис.

ответ

5

Исправление был массив массивов:

$event_field_key = 'field_535e6b9ffe3da'; 

     $events[] = array(
      'start-date' => $startDate, 
      'end-date'  => $endDate, 
      'notes'   => $_POST['p'.$p.'-notes'], 
      'start-end-times' => array(
       array(
        'start-time' => '09:00', 
        'end-time' => '17:00' 
       ), 
       array(
        'start-time' => '10:00', 
        'end-time' => '16:00' 
       ) 
      ) 
     ); 

     update_field($event_field_key, $events, $post_id); 
+0

update_sub_field не работает, он не регистрирует и не вызвать, что поле «родитель» был обновлен, поэтому он не показывает в админ. –

+0

FYI: https://www.advancedcustomfields.com/resources/update_sub_field/ В настоящее время существует несколько методов, которые помогают с обновлением вложенных полей update_sub_field. – hitautodestruct

Смежные вопросы