Capa de acceso a la base de datos y eliminación de filas
WordPress usa la wpdbclase 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.phparchivo). 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 activatedclave se establecerá con un datetimevalor. 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.1active1
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 $_POSTvalores ed. Sugerencia: también puedes usar el user_email.
global $wpdb;
$wpdb->delete(
$wpdb->signups,
array( 'user_login' => 'some_login', ),
array( '%s', )
);