可以你可以像你提到的那样添加一个按钮;但我认为这将需要更多的代码。用户。php页面正在使用WP List Table类。。这意味着我们可以bulk actions
并在那里添加我们的自定义值。
因此,让我们创建一个函数,将新值添加到批量操作下拉框中:
add_action(\'admin_footer\', \'my_user_del_button\');
function my_user_del_button() {
$screen = get_current_screen();
if ( $screen->id != "users" ) // Only add to users.php page
return;
?>
<script type="text/javascript">
jQuery(document).ready(function($) {
$(\'<option>\').val(\'del_user_meta\').text(\'Delete User Meta\').appendTo("select[name=\'action\']");
});
</script>
<?php
}
这将在批量操作下拉框中添加“删除用户元”值。现在,我们需要一个函数来实际处理发送的数据:
add_action(\'load-users.php\', \'my_users_page_loaded\');
function my_users_page_loaded() {
if(isset($_GET[\'action\']) && $_GET[\'action\'] === \'del_user_meta\') { // Check if our custom action was selected
$del_users = $_GET[\'users\']; // Get array of user id\'s which were selected for meta deletion
if ($del_users) { // If any users were selected
foreach ($del_users as $del_user) {
delete_user_meta($del_user, \'YOUR_METADATA_KEY_TO_BE_REMOVED\'); // Change this meta key to match the key you would like to delete; or an array of keys.
}
}
}
}
在这里,我们遍历我们在旁边放置复选标记的每个用户。然后,它将删除
meta_key
您为每个选定的用户指定了。
注意:您需要更改YOUR_METADATA_KEY_TO_BE_REMOVED
字符串设置为要删除的meta\\u键的实际名称。如果要删除多个元密钥,则需要添加多个delete_user_meta()
功能。