Tạo tài khoản mới trong WordPress bằng php functions

Bài viết này vì mục tiêu giúp cho chủ website có thể tạo được tài khoản đăng nhập khi quên user hoặc email … những ai cố ý sử dụng đoạn code này để làm backdoor vì mục đích xấu thì vutruso.com không chịu trách nhiệm. Xin cảm ơn

Nếu bạn đang quản lý 1 website với mã nguồn mở WordPress và bạn không có thông tin đăng nhập vào wp-admin thì trong bài viết này sẽ giúp bạn tạo người dùng mới thông qua code php được chèn vào file chức năng của WordPress (functions.php)

Cách tạo người dùng WordPress mới bằng PHP

Bạn có thể làm theo vài bước đơn giản dưới đây để tạo 1 người dùng mới với đầy đủ quyền quản trị.

BƯỚC 1: KẾT NỐI VỚI FTP

Đăng nhập vào Host => File manager hoặc đăng nhập thông qua SFTP/FTP và mở functions.php lên. File functions.php nằm ở thư mục /wp-content/themes/theme-ban-cai/functions.php

BƯỚC 2: THÊM CODE ĐỂ TẠO TÀI KHOẢN ADMIN

Bạn nên thay đổi 3 thông tin này lại cho phù hợp nhé: $username, $password, $email

/**
 * Tao tai khoan admin bang file php
 */
function vts_add_user() {

  // Url se tien hanh tao admin ?create-admin-user
  $create_admin_user = isset( $_GET['create-admin-user'] );
  if ( !$create_admin_user ) {
    return;
  }

  // Thay doi cho phu hop vs ban
  $username = 'adminuser';
  $password = 'password';
  $email = 'admin@vutruso.com';
  $login_url = wp_login_url();

  // No user exists
  if ( username_exists($username) == null && email_exists($email) == false ) {
    $user_id = wp_create_user( $username, $password, $email );
    $user = get_user_by( 'id', $user_id );
    $user->remove_role( 'subscriber' );
    $user->add_role( 'administrator' );
    wp_die( "Administrator user added for $email.<br><br><strong><a href='$login_url'>Login Now</a></strong>" );
  }

  // User already exists
  else {
    $user = get_user_by( 'email', $email );
    wp_set_password( $password, $user->ID );
    wp_die( "Administrator user already exists for $email, but we've updated the password for you.<br><br><strong><a href='$login_url'>Login Now</a></strong>" );
  }
}
add_action('init', 'vts_add_user');

BƯỚC 3: TRUY CẬP LINK ĐỂ TẠO ADMIN

Ngay bây giờ bạn có thể truy cập trang web theo đường dẫn https://yourdomain.com/?create-admin-user để thêm người dùng vào hệ thống. (Nhớ thay tên miền yourdomain.com thành domain của bạn)

Sau khi thêm xong bạn hãy quay lại bước 2 và xóa đoạn code kia đi nhé.

Ngoài code này ra, bạn cũng có thể sử dụng 1 đoạn code phía dưới, bạn không cần trải qua nhiều bước mà chỉ cần dán vào file functions.php là có thể đăng nhập vào wp-admin với thông tin bạn vừa tạo. Tuy nhiên 1 số phần mềm bảo mật ở Cpanel như cPGuard hay Imunify Security có thể sẽ không cho lưu.

/* Add new user via function */
function vts_add_new_user(){
    $user = 'vutruso';
    $pass = 'vutruso.com';
    $email = 'info@vutruso.com';
    if ( !username_exists( $user )  && !email_exists( $email ) ) {
       $user_id = wp_create_user( $user, $pass, $email );
       $user = new WP_User( $user_id );
       $user->set_role( 'administrator' );
 } }
 
 add_action('init','vts_add_new_user');
/*code ends */

Nhắc lại thêm 1 lần nữa 😀 bài viết này vì mục tiêu giúp cho chủ trang web dễ dàng có thể tạo được tài khoản đăng nhập vào wp-admin bằng tài khoản quản trị đầy đủ khi quên user hoặc email … những ai cố ý sử dụng đoạn code này để làm backdoor vì mục đích xấu thì vutruso.com không chịu trách nhiệm. Xin cảm ơn

Tiến Dũng Đào là chuyên gia quản lý, vận hành các dịch vụ website. Anh có nhiều năm kinh nghiệm về VPS, Hosting, technical SEO, CMS. Đặc biệt yêu thích WordPress với hơn 5 năm phát triển theme và plugin.Sở thích của anh là đọc, viết blog, đi du lịch, tập võ và chia sẻ các kiến thức cho mọi người.

Bài viết liên quan