Задать вопрос

Как получить user_ID со страницы профиля(wordpress)?

В общем создал дополнительное поле в профиле пользователя, ну и для определения кому сохранять изменения в этом поле сейчас берется user_ID из авторизации... Получается если каждый пользователь сам редактирует это поле все хорошо, но отредактировать его администратором не получается, как взять user_ID со страницы профиля?
add_action('show_user_profile', 'vu_subscribe_data');
add_action('edit_user_profile', 'vu_subscribe_data');

add_action('personal_options_update', 'vu_subscribe_data_update');
add_action('edit_user_profile_update', 'vu_subscribe_data_update');

function vu_subscribe_data(){
    global $user_ID;

    $accaunt = get_user_meta( $user_ID, "subscribe_data", 1 );

    ?>
    <h3>VIP подписка</h3>
    <table class="form-table">
        <tr>
            <th><label for="user_fb_txt">Дата окончания доступа</label></th>
            <td>
                <input type="text" name="subscribe_data" value="<?php echo $accaunt ?>"><br>
            </td>
        </tr>
    </table>
<?php
}
// обновление
function vu_subscribe_data_update(){
    global $user_ID;

    update_user_meta( $user_ID, "subscribe_data", $_POST['subscribe_data'] );
}
  • Вопрос задан
  • 317 просмотров
Подписаться 3 Оценить Комментировать
Решения вопроса 1
@denidip Автор вопроса
В общем ответ на вопрос найден, если кому интересно будет то вот:
add_action('show_user_profile', 'vu_subscribe_data');
    add_action('edit_user_profile', 'vu_subscribe_data');

    function vu_subscribe_data($user){

        ?>
        <h3>VIP подписка</h3>
        <table class="form-table">
            <tr>
                <th><label for="user_fb_txt">Дата окончания доступа</label></th>
                <td>
                    <input type="text" name="subscribe_data" value="<?php echo esc_attr(get_the_author_meta('subscribe_data',$user->ID));?>"><br>
                </td>
            </tr>
        </table>
    <?php
    }
// обновление
    add_action('personal_options_update', 'vu_subscribe_data_update');
    add_action('edit_user_profile_update', 'vu_subscribe_data_update');

    function vu_subscribe_data_update($user_id){

        if (!current_user_can('edit_user', $user_id ))
            return false;

        update_user_meta( $user_id, 'subscribe_data', $_POST['subscribe_data'] );
    }
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы