it-swarm.com.de

Fragen Sie die Wordpress-Datenbank nach dem registrierten Datum und der Rolle ab

Ich möchte den Anzeigenamen und die E-Mail-Adresse für alle Benutzer erhalten, die sich heute in der Rolle des Abonnenten auf meiner Multisite registriert haben. Es muss sich um eine SQL-Abfrage handeln, da diese außerhalb der WP -Dateien verwendet wird.

Ich habe versammelt, ich brauche Folgendes:

Tabelle: wp_users Spalten: user_registered, user_email, display_name

Tabelle: wp_usermeta Spalten: wp_6_capabilities = a: 1: {s: 10: "subscriber"; b: 1;}

Ich schätze, ich muss die Benutzer-IDs von wp_users aller Benutzer abrufen, die heute abonniert haben, und dann mit wp_usermeta vergleichen, um diese Ergebnisse nach Benutzerrolle einzugrenzen. Dann muss ich zu wp_users zurückkehren und die E-Mail und den Anzeigenamen abrufen.

Ich habe versucht, eine SQL-Abfrage zu schreiben, um dies für eine Weile zu tun, und kann nicht scheinen, mit irgendetwas zu kommen.

Jede Hilfe wird geschätzt.

Vielen Dank.

1
lcheney

Ich bin kein SQL-Experte, aber ich denke, das würde ungefähr so ​​aussehen:

SELECT * FROM mydatabase.wp_users 
INNER JOIN mydatabase.wp_usermeta 
ON (wp_users.ID = wp_usermeta.user_id) 
WHERE 1=1 
AND wp_users.user_registered > '2014-03-15 00:00:00' 
AND wp_users.user_registered < '2014-03-16 00:00:00'
AND ( (wp_usermeta.meta_key = 'wp_capabilities' 
AND CAST(wp_usermeta.meta_value AS CHAR) 
LIKE '%\"subscriber\"%') ) 
ORDER BY user_registered ASC ;
1
Richard Aber