Home › Forums › Backend Issues (wp-admin) › Import Custom Posts via CSV › Reply To: Import Custom Posts via CSV
Hi!
With the plugin Really Simple Csv Import, that is free and open source (https://github.com/hissy/rs-csv-importer), you can import Csv fields like “name a, name b, name c” as repeater fields or <select> elements. The author made specific hooks (filters) for this goal and they are well documented here.
For example, taking advantage of the “really_simple_csv_importer_save_meta filter” I managed to import, from a Csv, a field written like “author a, author b, author c” as a ACF repeater in WP, with the following code of mine:
add_filter('really_simple_csv_importer_save_meta', function($meta, $post, $is_update) {
if (strpos($value, ',') !== false) { // if there is a "," in the string...
$_value = preg_split("/,+/", $value); // "author a, author b, author c" pattern is converted in an array
$rows = count($_value); // return the number of the elements in array
$meta[$key] = $rows; // in ACF scheme, this is the meta_key for the number of rows, ie: "meta_key : authors, meta_value: 2"
// the loop creates each single row, in the form required by ACF: "meta_key: authors_0_author, meta_value: Mario Rossi"
for ($i=0; $i<$rows; $i++) {
$plural = 'authors';
$addition_sign = '_';
$singular = 'author';
$meta[$plural.$addition_sign.$i.$addition_sign.$singular] = $_value[$i]; // ie: $meta['authors_0_author'] = $_value[0];
} // end "for"
} // end if
else { // when the repeater has only one value...
$i = 0;
$plural = 'authors';
$addition_sign = '_';
$singular = 'author';
$meta[$key] = 1;
$meta[$plural.$addition_sign.$i.$addition_sign.$singular] = $value;
} // end else
});
Welcome to the Advanced Custom Fields community forum.
Browse through ideas, snippets of code, questions and answers between fellow ACF users
Helping others is a great way to earn karma, gain badges and help ACF development!
We use cookies to offer you a better browsing experience, analyze site traffic and personalize content. Read about how we use cookies and how you can control them in our Cookie Policy. If you continue to use this site, you consent to our use of cookies.