Пара вещей:
Во-первых, почему вы выполняете $wpdb
запросы для этого вместо использования вспомогательных функций WordPress, таких как get_users()
или WP_User_Query
класс и update_user_meta()
функция для хранения представленной информации?
Во-вторых, вы должны убедиться, что ваш код правильно отформатирован в стандартном синтаксисе, чтобы его было проще обновлять и поддерживать (а не эхом гигантские блоки HTML, как это) - будущее вам спасибо!
В-третьих, вы просто запускаете код if ( isset( $_POST['button'] ) ){
прямо здесь? Вы, вероятно, должны где-то подключить его и использовать одну из WordPress 'многих nonce
функций вместо того, чтобы полагаться на произвольную обычно называемую кнопку.
Тем не менее, я очистил ее немного и использовал вспомогательную функцию, но что-то вроде этого должно приблизить вас к тому, что вы ищете:
function kpam_application_management_users(){ ?>
<h2>Applicants</h2>
<table style="margin-left:10px;margin-top:10px;">
<tr>
<th>ID</th>
<th>Username</th>
<th>Email</th>
<th>Progress</th>
</tr>
<?php
$users = get_users();
foreach( $users as $user ){ ?>
<tr>
<td><?php echo $user->ID; ?></td>
<td><?php echo $user->user_nicename; ?></td>
<td><?php echo $user->user_email; ?></td>
<td>
<form method="POST">
<input type="hidden" name="user_id" value="<?php echo $user->id; ?>" />
<input type="number" name="progressz" placeholder="<?php echo get_user_meta( $user->ID, 'progressz', true ); ?>" />
<button id="btnConfirm" type="submit" name="progressz-submit">Update</button>
</td>
</form>
</tr>
<?php }
?>
</table>
<?php }
if( isset( $_POST['progressz-submit'] ) ){
update_user_meta( $_POST['user_id'], 'progressz', $_POST['progressz'] );
}