纯代码实现WordPress批量创建测试用户

WordPress技巧分享:作为一名WordPress开发者或网站管理员,你是否曾为创建大量测试用户而感到繁琐?在开发会员网站、测试权限功能或进行压力测试时,手动一个个添加用户、设置密码和邮箱,无疑是浪费时间且容易出错的重复性劳动。本文地质网老白给出一段简单的代码,彻底告别这个烦恼。让你在后台一键批量生成测试用户,极大提升工作效率。

纯代码实现WordPress批量创建测试用户

核心功能说明

这段代码的核心目标是为WordPress后台增加一个“快速添加测试用户”的功能入口。它具备以下特点:

  • 无缝集成:在WordPress仪表盘的“用户”菜单下,自动生成一个名为“快速添加测试用户”的子页面,操作入口清晰直观。
  • 极简操作:你只需要在一个文本框中,输入纯数字的用户名列表(每行一个)

修改教程

functions.php (主题函数文件)添加代码

*/
/**
* 快速添加测试用户-https://www.dzw6.com/.35123html
*/
function wpturbo_add_test_user_submenu_page() {
add_submenu_page(
'users.php', // 父级菜单的 slug (用户)
'快速添加测试用户', // 页面标题
'快速添加测试用户', // 菜单标题
'create_users', // 权限要求 (需要有创建用户的权限)
'wpturbo-add-test-users',
'wpturbo_render_test_user_page' // 用于渲染页面内容的回调函数
);
}
add_action('admin_menu', 'wpturbo_add_test_user_submenu_page');
function wpturbo_render_test_user_page() {
?>
<div class="wrap">
<h1>快速添加测试用户</h1>
<p>在下方文本框中输入纯数字的用户名,每行一个。系统将自动为每个用户设置密码为用户名本身,邮箱为 <code>{用户名}@qq.com</code>。</p>
<?php
if (isset($_POST['wpturbo_submit']) && check_admin_referer('wpturbo_create_test_users_nonce')) {
$usernames_input = $_POST['usernames'];
$usernames = preg_split('/\r\n|\r|\n/', $usernames_input);
$usernames = array_filter(array_map('trim', $usernames));
if (empty($usernames)) {
echo '<div class="notice notice-error is-dismissible"><p>请至少输入一个用户名。</p></div>';
} else {
$created_users = [];
$error_messages = [];
foreach ($usernames as $username) {
// 1. 验证用户名是否为纯数字
if (!is_numeric($username)) {
$error_messages[] = "用户名 '<strong>{$username}</strong>' 无效:必须是纯数字。";
continue;
}
if (username_exists($username)) {
$error_messages[] = "用户名 '<strong>{$username}</strong>' 已存在。";
continue;
}
$email = $username . '@qq.com';
$password = $username;
if (email_exists($email)) {
$error_messages[] = "邮箱 '<strong>{$email}</strong>' 已被使用。";
continue;
}
$user_id = wp_create_user($username, $password, $email);
if (is_wp_error($user_id)) {
$error_messages[] = "创建用户 '<strong>{$username}</strong>' 时发生未知错误:" . $user_id->get_error_message();
} else {
$created_users[] = $username;
}
}
if (!empty($created_users)) {
echo '<div class="notice notice-success is-dismissible"><h3>成功创建以下用户:</h3><ul>';
foreach ($created_users as $user) {
echo '<li>用户名: <strong>' . $user . '</strong>, 密码: <strong>' . $user . '</strong>, 邮箱: <strong>' . $user . '@qq.com</strong></li>';
}
echo '</ul></div>';
}
if (!empty($error_messages)) {
echo '<div class="notice notice-error"><h3>处理过程中发生以下错误:</h3><ul>';
foreach ($error_messages as $msg) {
echo '<li>' . $msg . '</li>';
}
echo '</ul></div>';
}
}
}
?>
<form method="post" action="">
<table class="form-table" role="presentation">
<tbody>
<tr>
<th scope="row">
<label for="usernames">用户名列表</label>
</th>
<td>
<textarea name="usernames" id="usernames" class="large-text" rows="15" placeholder="1&#10;2&#10;3&#10;1001&#10;1002"></textarea>
<p class="description">每行输入一个纯数字的用户名。例如,输入 "1" 将创建用户名为 "1",密码为 "1",邮箱为 "1@qq.com" 的用户。</p>
</td>
</tr>
</tbody>
</table>
<?php
wp_nonce_field('wpturbo_create_test_users_nonce');
submit_button('批量创建用户', 'primary', 'wpturbo_submit');
?>
</form>
</div>
<?php
}

WordPress仪表盘, “用户” 菜单,就能看到“快速添加测试用户”

点击文末标签阅读更多WordPress优化教程。

给TA打赏
共{{data.count}}人
人已打赏
网站建设

B2主题解除特定角色圈子话题阅读限制

2025-11-29 13:56:22

软件系统

QQ NT电脑版登陆微软应用商店:轻量化革新与安装指南

2025-2-22 22:33:50

🚨 小黑屋
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
搜索