$postId) { $persons = get_field('company_members', $postId); if (!$persons) continue; $field_key = 'field_670d268f2b324'; update_field($field_key, [], $postId); // if ($postId === '119' || $postId === 8203) { // } } } function build_personn_fr($row) { $personn_data_fr = array( 'acf_fc_layout' => 'membre', 'genre' => $row['Sexe'] ?? "", 'first_name' => $row['first_name'] ?? "", 'last_name' => $row['last_name'] ?? "", 'description' => $row['formation_fr'] ?? "", 'member_gsm_number' => $row['gsm'] ?? "", 'old_website_person_id' => $row['person_id'] ?? "", ); return $personn_data_fr; } function build_personn_nl($row) { $personn_data_nl = array( 'acf_fc_layout' => 'membre', 'genre' => $row['Sexe'] ?? "", 'first_name' => $row['first_name'] ?? "", 'last_name' => $row['last_name'] ?? "", 'description' => $row['formation_nl'] ?? "", 'member_gsm_number' => $row['gsm'] ?? "", 'old_website_person_id' => $row['person_id'] ?? "", ); return $personn_data_nl; } function populate_personns() { // Chemin vers le fichier CSV $csv_file = '/Users/martoni_sato/Local Sites/homegrade-multi/app/public/wp-content/themes/Metiers_du_patrimoine/datas/20241114_Consolidations_cleaned_persons.csv'; if (($handle = fopen($csv_file, 'r')) !== false) { // Lire l'en-tête du CSV $headers = fgetcsv($handle, 0, ','); // Parcourir chaque ligne du CSV while (($data = fgetcsv($handle, 0, ',')) !== false) { $row = array_combine($headers, $data); // if ($row['company_id (NEW)'] === '119') { $post_fr_ID = $row['company_id (NEW)'] ?? null; if (!$post_fr_ID) continue; $post_nl_ID = apply_filters('wpml_object_id', $post_fr_ID, 'artisans', FALSE, 'nl'); // Récupérer les membres existants $existing_members_fr = is_array(get_field('company_members', $post_fr_ID)) ? get_field('company_members', $post_fr_ID) : []; $existing_members_nl = is_array(get_field('company_members', $post_nl_ID)) ? get_field('company_members', $post_nl_ID) : []; // Build des données du contenu flexible $user_data_fr = build_personn_fr($row); $user_data_nl = build_personn_nl($row); $updatedMembersArrayFr = $existing_members_fr; $updatedMembersArrayNl = $existing_members_nl; array_push($updatedMembersArrayFr, $user_data_fr); array_push($updatedMembersArrayNl, $user_data_nl); $field_key = 'field_670d268f2b324'; update_field($field_key, $updatedMembersArrayFr, $post_fr_ID); update_field($field_key, $updatedMembersArrayNl, $post_nl_ID); } } // Fermer le fichier CSV fclose($handle); // } } function get_multiple_members_from_artisans() { $args = array( "status" => "publish", "post_type" => "artisans", "posts_per_page" => -1, // "tax_query" => $taxQuery, // "meta_query" => $metaQuery, ); $newsPostsDatas = new WP_Query($args); $filteredPosts = []; foreach ($newsPostsDatas->posts as $key => $post) { $persons = get_field('company_members', $post->ID); if (!$persons) continue; write_log(count($persons)); if (count($persons) > 1) { write_log($post->ID); } } return $filteredPosts; } function show_acf_repeator() { $repeater = get_field('company_members', 123); write_log($repeater); }