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 2 3 1001 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优化教程。





