Untitled

 avatar
unknown
php
a year ago
1.9 kB
8
Indexable
<?php
/**
 * Plugin Name: Export Users Data
 * Description: Cria uma senha padrão para todos os usuários que não são administradores e exporta os dados de todos os usuários.
 * Version: 1.0
 * Author: Refatorando
*/

function set_default_passwords_and_generate_csv() {
    $default_password = 'SenhaPadrao123';
    $users = get_users();
    $csv_headers = ['Username', 'Email', 'Password'];
    $csv_data = [];

    foreach ($users as $user) {
        if (!in_array('administrator', $user->roles)) {
            wp_set_password($default_password, $user->ID);
        }
        $csv_data[] = [$user->user_login, $user->user_email, $default_password];
    }

    header('Content-Type: text/csv');
    header('Content-Disposition: attachment;filename=user_data.csv');

    $output = fopen('php://output', 'w');
    fputcsv($output, $csv_headers);
    foreach ($csv_data as $row) {
        fputcsv($output, $row);
    }
    fclose($output);
    exit();
}

function handle_csv_download() {
    if (isset($_POST['export_user_data']) && current_user_can('manage_options')) {
        set_default_passwords_and_generate_csv();
    }
}
add_action('admin_init', 'handle_csv_download');

function add_admin_page() {
    add_menu_page(
        'Exportar Dados de Usuário',
        'Exportar Dados de Usuário',
        'manage_options',
        'export-user-data',
        'admin_page_content'
    );
}

function admin_page_content() {
    echo '<div class="wrap">';
    echo '<h1>Exportar Dados de Usuário</h1>';
    echo '<form method="post">';
    echo '<input type="hidden" name="export_user_data" value="1">';
    echo '<input type="submit" value="Exportar Dados e Redefinir Senhas" class="button button-primary">';
    echo '</form>';
    echo '</div>';
}

add_action('admin_menu', 'add_admin_page');
Editor is loading...
Leave a Comment