Camada de acesso ao banco de dados e exclusão de linhas
O WordPress usa a wpdb
classe para gerenciar o acesso à camada do banco de dados usando o global $wpdb
. A classe fornece um método chamado delete()
para excluir linhas das tabelas:
$wpdb->delete( $table, $where, $where_format = null );
Tabelas multissite e chaves de ativação
O WordPress tem algumas tabelas específicas de MU , onde uma está {$wpdb->prefix}signups
(prefixo definido no seu wp-config.php
arquivo). Tabelas de esquema aqui . O responsável pela ativação da conta do usuário é o activation_key
, que é definido após o usuário clicar no link no correio. Depois disso, a activated
chave será definida com um datetime
valor. Antes de a conta ser ativada, o valor padrão será 0000-00-00 00:00:00
(caso você precise consultar o padrão). Também no processo está a coluna tinyint
/ , que é definida como se um usuário estiver ativo.1
active
1
O próprio núcleo usa wpmu_activate_signup()
. Veja alguns exemplos. Um é o seguinte que atualiza uma entrada do usuário para ativá-la - retrabalhada para facilitar a leitura.
$wpdb->update(
$wpdb->signups,
array(
'active' => 1,
'activated' => current_time( 'mysql', true ),
),
array( 'activation_key' => $key, )
);
Construindo uma consulta em contas ainda não ativadas
Simplesmente deixe o WP fazer o trabalho duro:
global $wpdb;
$wpdb->delete(
$wpdb->signups,
array( 'user_login' => 'some_login', )
);
Você pode usar o terceiro argumento (matriz) se estiver usando um formulário (n admin) para executar essas solicitações (por exemplo, estendendo a WP_List_Table
) para indicar que está usando uma string. Lembre-se de que você ainda deve higienizar os $_POST
valores. Dica: você também pode usar o user_email
.
global $wpdb;
$wpdb->delete(
$wpdb->signups,
array( 'user_login' => 'some_login', ),
array( '%s', )
);