Allen WordPress-Usern ein neues Passwort senden

| | Allgemein, Programmierung, Web

Nach einer längeren Pause auf meinem Blog hab ich heute etwas mit gebracht. Wer WordPress mit vielen Benutzern verwenden will, hat besonders beim Anlegen der User das Problem das man im nach hinein kein Passwort mehr versenden kann.

Und genau aus diesem Grund habe ich vor kurzem mal ein kleines Script geschrieben.

<?php
   /*
   Plugin Name: User Password Sender
   Plugin URI: http://www.koli-design.de/
   Description: With this tool you can send each WP user a random Password
   Author: Marc Horst
   Author URI: http://www.koli-design.de/
   Version: 1.0.1
*/
add_action('admin_menu', 'add_dashboard_menu');
function add_dashboard_menu(){
        add_menu_page( "User Password Send","UP SEND", "activate_plugins", "up", "main", "", 3 );
}

function randomPassword() {
    $alphabet = "abcdefghijklmnopqrstuwxyzABCDEFGHIJKLMNOPQRSTUWXYZ0123456789";
    $pass = '';                           //password is a string
    $alphaLength = strlen($alphabet) - 1; //put the length -1 in cache
    for ($i = 0; $i < 10; $i++) {
        $n = mt_rand(0, $alphaLength);    
        $pass = $pass.$alphabet[$n];      //append a random character
    }
    return ($pass); 
}

function main() {
        global $users;
        $userslist = get_users_of_blog();
        
        if(isset($_POST['update'])) {
                
                foreach($_POST['selected'] as $value) {
                        $pass = randomPassword();
                        $userdata = get_userdata($value);
                        $newtext = $_POST['text'];
                        $newtext = str_replace(array("%USERNAME","%PASS","<br>"),array($userdata->user_login,$pass,"<br />"),$newtext);
                        echo $value." - ".$userdata->user_email;
                        echo " - ";
                        echo $pass;
                        echo "<br />";
                        wp_set_password($pass,$value);
                        $header  = 'MIME-Version: 1.0' . "\r\n";
                        $header .= 'Content-type: text/html; charset=utf-8' . "\r\n";

                        // zusätzliche Header
                        $header .= 'From: <no-reply@'.$_SERVER['HTTP_HOST'].'>' . "\r\n";
                        
                        //TODO: Betreff muss Dynamisiert werden, Sender auch 
                        mail($userdata->user_email,"neues PW",$newtext, $header);
                        echo "erfolg";
                        
                        unset($pass);
                }
        
        }
        else {
                ?>
                </br >
                <h3>Text</h3>
                <small>%PASS, %USERNAME</small>
                <form method="post">
                <input type="hidden" name="update" ></input>
                <textarea name="text" style="width: 50%; height: 200px;"></textarea><br /></br >
                <h3>Select Users</h3>
                <select multiple="multiple" name="selected[]">

                        <?php
                        
                        foreach($userslist as $user) {
                        $user = (array) $user;
                                echo '<option value="'.$user["user_id"].'">'.$user["display_name"].'</option>';
                        }
                        
                        ?>
                        </select>
                        </br ></br >
                        <input type="submit"></input>
                </select>
                </form>
                <?php
        }
        return true;
        
}
?>

Ich hoffe das es einigen Hilft!

Neueste Beiträge

Your MSPA Goes Smart – Step-by-Step to a DIY Smart Home Hot Tub (Wi-Fi Upgrade)

Introduction

In this article, I’ll show you how I successfully reverse-engineered the serial communication protocol of an MSPA Muse Carlton hot tub. The goal was to read remote control commands and send custom ones. I used an ESP32 Dev Board[*] for this. This protocol likely works with other MSPA models as well.

This article is for makers, home automation enthusiasts, and tech fans who enjoy diving deep into technical systems.


Weiter >>

Dein MSPA wird smart – Schritt-für-Schritt zum DIY Smart Home Whirlpool (WIFI/WLAN Upgrade) / Reverse Engineering eines proprietären UART-Protokolls am Beispiel eines Whirlpool-Steuergeräts (MSPA Muse Carlton)

Einleitung

In diesem Artikel zeige ich dir, wie ich das serielle Kommunikationsprotokoll eines MSPA Muse Carlton Whirlpools erfolgreich reverse-engineered habe. Ziel war es, die Fernbedienungsbefehle auszulesen und eigene Kommandos zu senden. Dafür kam ein ESP32 Dev Board[*] zum Einsatz. Dieses Protokoll funktioniert vermutlich auch bei anderen MSPA-Modellen.

Dieser Artikel richtet sich an alle Maker, Home-Automatisierer und Technik-Fans, die gern tief in die Technik eintauchen.


Weiter >>

Der perfekte Einstieg in die Welt der Vinyls: Der Denon DP-300F und 2 Alternativen

Warum Vinyl?

Vinyl erlebt seit einigen Jahren ein riesiges Comeback. Der warme, analoge Klang, das bewusste Musikhören und das Sammeln von Schallplatten faszinieren immer mehr Musikliebhaber. Dabei ist nicht nur das nostalgische Feeling ausschlaggebend, sondern vor allem auch der unverwechselbare Klangcharakter von Vinyl – ein Klang, der trotz moderner digitaler Verfahren nach wie vor viele Fans begeistert.

Denon DP-300F[*] – Der ideale Allrounder für Einsteiger

Der Denon DP-300F[*] ist nach wie vor ein beliebter vollautomatischer Plattenspieler im Einsteigerbereich. Sein automatischer Tonarm sorgt für einen schonenden Umgang mit Nadel und Platte – perfekt, wenn du ohne großen Aufwand direkt in den Vinylgenuss starten möchtest.


Weiter >>

Ein Leitfaden für Senioren: Günstige Smartphones bis 100 Euro – Unsere 4 Favoriten & Erfahrungsbericht einer maßgeschneiderten Senioren-Lösung – UPDATE 2024/25

In diesem Beitrag stellen wir dir vier günstige Smartphones vor, die aktuell (Stand Dezember 2024) für unter 100 Euro erhältlich sind. Zusätzlich teilen wir eine ganz besondere Geschichte aus dem Familienkreis: Wie wir eines dieser Geräte für die Oma meiner Verlobten eingerichtet haben, damit sie trotz ihrer Parkinson-Erkrankung gut damit zurechtkommt.


Weiter >>