Camada de acesso ao banco de dados e exclusão de linhas
O WordPress usa a wpdbclasse 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.phparquivo). 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 activatedchave será definida com um datetimevalor. 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.1active1
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 $_POSTvalores. Dica: você também pode usar o user_email.
global $wpdb;
$wpdb->delete(
$wpdb->signups,
array( 'user_login' => 'some_login', ),
array( '%s', )
);