Добавьте в массив контент, сгенерированный foreach - PullRequest
0 голосов
/ 23 апреля 2020

я отображаю с foreach содержимое user_meta в WordPress. Он отображает ввод, который заполняет значениями (чтобы их можно было изменить). Я хочу иметь возможность хранить каждый контент в новом массиве (чтобы я мог обновить user_meta следующим.

Так вот основной код:

    <?php

function edit_profile_form() {

    $current_user_id = get_current_user_id();
    $data = get_user_meta ($current_user_id);

    if (isset($_POST['button2'])) {
        delete_user_meta($current_user_id, 'experiences');
    }

    if(isset($_POST['button1'])) {
        save_extra_profile_fields($current_user_id);
    };

    $experiences = get_user_meta($current_user_id, 'experiences', true);

?>

<div class="container_form">
<form method="POST">

    <h3>Vos expériences</h3>

    <div class="experiences_container">
        <?php 
        if (!empty($experiences)) {
            $index=0;
            foreach ($experiences as $key) {
            $index++;
            echo($index);
            echo($key);
            ?>
                <div class="past_experience">
                    <div class="experience_header">
                        <div>
                            <label for="team">Nom de l'équipe</label>
                                <input class="team" name="team" value="<?= $key['new_experience_team'];?>"/>
                        </div>
                        <div>
                            <label for="role">Rôle dans l'équipe</label>
                                <input class="role" name="role" value="<?= $key['new_experience_role'];?>"/>
                        </div>
                    </div>

                    <div class="experience_textarea">
                        <label for="description">Description du rôle</label>
                        <textarea class="description" name="description"><?= $key['new_experience_description']; ?></textarea>

                        <label for="palmares">Palmarés avec l'équipe</label>
                        <textarea class="palmares" name="palmares"><?= $key['new_experience_palmares']; ?></textarea>
                    </div>

                </div>  
            <?php
            } 

        } else {
        ?>
        <div><p>Vous n'avez encore rentré aucune expérience</p></div>
        <?php 
    }?>


    </div>

    <div class="add_container">
        <div id="dropdown">
            <i class="fas fa-plus-square" style="margin-right: 5px;"></i>
            <p id="show" onClick="dropdown()" >Ajouter une expérience</p>
        </div>
        <div id="experience" style="display:none;">

            <label for="new_experience_team">Nom de l'équipe</label>
            <input type="text" name="experiences[new_experience_team]" id="experience_team">

            <label for="new_experience_role">Rôle dans l'équipe</label>
            <input type="text" name="experiences[new_experience_role]" id="experience_role">

            <label for="new_experience_description">Description du poste</label>
            <textarea type="text" name="experiences[new_experience_description]" id="experience_description"></textarea>

            <label for="new_experience_palmares">Palmarés</label>
            <textarea type="text" name="experiences[new_experience_palmares]" id="experience_palmares"></textarea>

        </div>
    </div>

    <div id="button_container">
    <input type="submit" name="button1" value="Sauvegarder" id='save'/>
    <input type="submit" name="button2" value="Annuler"/>
    </div>

</form>
</div>

Один из функций:

<?php

function save_extra_profile_fields( $user_id ) {

    if (!empty($_POST['experiences'])) {
        $savedexperience = get_user_meta($user_id, 'experiences', true);
        if (!empty($savedexperience) && is_array($savedexperience )) {
            $experiences = $savedexperience;
        }
        $experiences[] = $_POST['experiences'];
        update_usermeta($user_id, 'experiences', $experiences);
    }
}

Так что я хочу иметь возможность хранить в массиве каждую группу команды, роли, описания и пальмы.

Я не знаю, понятно ли это вообще: /

Спасибо всем

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...