Capa de acceso a la base de datos y eliminación de filas
WordPress usa la wpdb
clase para administrar el acceso a la capa de la base de datos usando global $wpdb
. La clase proporciona un método llamado delete()
para eliminar filas de las tablas:
$wpdb->delete( $table, $where, $where_format = null );
Tablas multisitio y claves de activación
WordPress tiene algunas tablas específicas de MU , donde está una {$wpdb->prefix}signups
(prefijo establecido en su wp-config.php
archivo). Esquema de tablas aquí . El responsable de la activación de la cuenta de usuario es el activation_key
, que se configura después de que el usuario hizo clic en el enlace del correo. Después de eso, la activated
clave se establecerá con un datetime
valor. Antes de activar la cuenta, el valor predeterminado será 0000-00-00 00:00:00
(en caso de que necesite consultar el valor predeterminado). También en el proceso está la columna tinyint
/ , que se establece en si un usuario está activo.1
active
1
El núcleo mismo usa wpmu_activate_signup()
. Míralo para ver algunos ejemplos. Una de ellas es la siguiente que actualiza una entrada de usuario para activarla, modificada para facilitar la lectura.
$wpdb->update(
$wpdb->signups,
array(
'active' => 1,
'activated' => current_time( 'mysql', true ),
),
array( 'activation_key' => $key, )
);
Creación de una consulta contra cuentas aún no activadas
Simplemente deje que WP haga el trabajo duro:
global $wpdb;
$wpdb->delete(
$wpdb->signups,
array( 'user_login' => 'some_login', )
);
Podría usar el tercer argumento (matriz) si está usando un formulario (n admin) para realizar esas solicitudes (por ejemplo, extender a WP_List_Table
) para indicar que está usando una cadena. Tenga en cuenta que aún debe desinfectar los $_POST
valores ed. Sugerencia: también puedes usar el user_email
.
global $wpdb;
$wpdb->delete(
$wpdb->signups,
array( 'user_login' => 'some_login', ),
array( '%s', )
);