Cách đổi email admin wordpress không cần mail xác nhận nhanh chóng
Đoạn mã PHP này sẽ thay đổi địa chỉ email quản trị của một trang WordPress và cập nhật địa chỉ email cho tất cả người dùng có quyền Administrator. Cụ thể, nó thực hiện các thao tác sau:
- Cập nhật email quản trị của site: Đoạn mã thay đổi email quản trị của trang (admin_email) mà không cần xác nhận, đảm bảo rằng email mới được áp dụng ngay lập tức.
- Tự động tạo email duy nhất cho mỗi tài khoản Administrator: Để tránh trùng lặp, đoạn mã sẽ thêm dấu . vào các vị trí khác nhau trong địa chỉ email cơ bản cho từng tài khoản quản trị, tạo ra các biến thể như c.aytrebb21@gmail.com, ca.ytrebb21@gmail.com, v.v. Các email có dấu . cũng là admin gốc nên bạn đừng lo về bảo mật nhé! hãy thử đăng nhập email có dấu . = mật khẩu của bạn đi, vẫn là email của bạn.
- Xóa cờ xác nhận: Bỏ qua yêu cầu xác nhận email, đảm bảo rằng tất cả email mới được cập nhật ngay lập tức mà không cần xác nhận qua email.
Hướng dẫn:
Copy code sau dán vào functions.php của theme hiện tại WP sau đó lưu lại là xong!
Sau khi kiểm tra đã đổi dc email thì hãy xóa code này đi nhé!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | function tc_update_unique_admin_emails() { // Địa chỉ email gốc $base_email = '<span style="color: #ed1c24;"><strong>dia.chi.email.moi@gmail.com</strong></span>'; // Cập nhật email site mà không cần xác nhận update_option('admin_email', $base_email); update_option('new_admin_email', $base_email); delete_option('admin_email_lifespan'); // Cập nhật email cho từng tài khoản 'Administrator' với dấu '.' để tránh trùng lặp $admin_users = get_users(['role' => 'administrator']); $count = 1; foreach ($admin_users as $user) { // Thêm dấu '.' lần lượt vào email $modified_email = substr_replace($base_email, '.', $count, 0); $count++; wp_update_user([ 'ID' => $user->ID, 'user_email' => $modified_email ]); // Xóa cờ xác nhận nếu có delete_user_meta($user->ID, 'new_email'); } } add_action('init', 'tc_update_unique_admin_emails'); |
Hoặc sử dụng đoãn này để tự động lấy tên miền của web làm đuôi email:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | function tc_update_unique_admin_emails() { // Lấy domain hiện tại $domain = parse_url(home_url(), PHP_URL_HOST); // Địa chỉ email gốc với domain hiện tại $base_email = 'admin@' . $domain; // Cập nhật email site mà không cần xác nhận update_option('admin_email', $base_email); update_option('new_admin_email', $base_email); delete_option('admin_email_lifespan'); // Cập nhật email cho từng tài khoản 'Administrator' với dấu '.' để tránh trùng lặp $admin_users = get_users(['role' => 'administrator']); $count = 1; foreach ($admin_users as $user) { // Thêm dấu '.' lần lượt vào email $email_parts = explode('@', $base_email); $modified_email = $email_parts[0] . ".{$count}@" . $email_parts[1]; $count++; wp_update_user([ 'ID' => $user->ID, 'user_email' => $modified_email ]); // Xóa cờ xác nhận nếu có delete_user_meta($user->ID, 'new_email'); } } add_action('init', 'tc_update_unique_admin_emails'); |
Lợi ích của đoạn mã:
- Tiết kiệm thời gian và công sức: Không cần phải vào từng tài khoản để thay đổi email bằng tay. Đoạn mã tự động cập nhật email cho tất cả tài khoản quản trị và email quản trị của trang chỉ trong một thao tác duy nhất.
- Loại bỏ yêu cầu xác nhận email: Bằng cách xóa các cờ xác nhận, đoạn mã này giúp email mới được kích hoạt ngay mà không phải chờ đợi hoặc xác nhận qua email.
- Tránh trùng lặp email: Với các trang web có nhiều tài khoản Administrator, đoạn mã tự động tạo email duy nhất cho từng tài khoản, giúp quản trị viên tránh các lỗi trùng lặp và đảm bảo mỗi tài khoản đều có email riêng biệt.
- Cập nhật nhanh chóng: Đoạn mã này có thể được thêm vào functions.php hoặc plugin tùy chỉnh, giúp việc cập nhật email diễn ra ngay khi trang được tải, tiết kiệm thời gian triển khai cho quản trị viên.
Bạn có hài lòng với trải nghiệm tìm kiếm thông tin, sản phẩm trên website không?
Cảm ơn bạn đã đánh giá!