最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

php - Update grandchild repeater field with value per row

programmeradmin0浏览0评论

I'm trying to take the following data from a table:

And input it to a nested ACF repeater field. I've got very close in that it's creating the correct amount of tables (3 from the example), the correct amount of columns for each table.

The last part isn't quite working, it's only inputting the last row of data into the "Information" repeater, which suggests it's not iterating the row numbers, therefore just inputting it to row 1.

Where am I going wrong (see code at the bottom)? So for the first table, each information table should have 4 rows of data in it for each column.

  • Top repeater (product codes): field_5ae0882f9d6f9
    • Nested repeater 1 (table): field_5b3f409de191a
      • Nested repeater 2 (information): field_5ae088999d6fb
        • Field to update (text): field_5ae088b79d6fc

Here's the code:

     $value = array();
      $rowcount = 1;
      while($row = next($rows)){

          $cells = $row->find('td');
          $columnsCount = count($cells);
          $counter = 1;
          foreach ($cells as $cell) {
            $value = array(
              "field_5ae088999d6fb" => array(
                array("field_5ae088b79d6fc" => strip_tags($cell->innertext))
              )
            );
            update_sub_row( array('field_5ae0882f9d6f9', $tablecounter, 'field_5b3f409de191a'), $counter, $value, $post_id );
            $value = array();
            $counter++;
          }

        $rowcount++;

  }

  $tablecounter++;
发布评论

评论列表(0)

  1. 暂无评论