Home Forums General Issues Import ACF Repeater Field Values from CSV


Import ACF Repeater Field Values from CSV

  • I’m trying to import a load of data into a sub fields of a repeater field (mortgage_providers) using file field (dd_csv) to upload the file to a post and return an array. Then loop through each row with PHP and update the repeater fields. I have tried the following but I can’t seem to get it to work.

    if( get_field('dd_csv') ) {
            // load csv with SERVER PATH instead of URL
            $csv = get_attached_file(get_field('dd_csv')['id']);
            if(($handle = fopen($csv, "r")) !== FALSE) {
              $count = 0;
              while(($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
                // $count = acf row, $data[0] = csv column 1 value
                update_sub_field(array('mortgage_providers', $count, 'mortgage_provider_name'), $data[0], 'option');

    Here’s a sample of the data:

    at symbol Sipp
    012 Property Shares
    121 Legals
    1st Source Direct
    1st Stop Finance
    33 KWS
    5 Arrows
    AA Commercial Insurance
    A1 Lender not relevant
    AA Friendly Society
    AA Insurance

    In total there’s over 1000 rows in column 1 of the CSV.


  • Adding rows to a sub field requires using add_row().

  • I just ran into a very similar problem trying to import a whole load of data from a csv into a repeater, might be useful for anyone looking at how to do this in future

Viewing 3 posts - 1 through 3 (of 3 total)

You must be logged in to reply to this topic.