Livello di accesso DB ed eliminazione di righe
WordPress usa la wpdb
classe per gestire l'accesso al livello del database usando il global $wpdb
. La classe fornisce un metodo denominato delete()
per eliminare le righe dalle tabelle:
$wpdb->delete( $table, $where, $where_format = null );
Tabelle multisito e chiavi di attivazione
WordPress ha alcune tabelle specifiche MU , dove si trova {$wpdb->prefix}signups
(prefisso impostato nel tuo wp-config.php
file). Schema delle tabelle qui . Il responsabile dell'attivazione dell'account utente è il activation_key
, che viene impostato dopo che l'utente ha fatto clic sul collegamento nella posta. Successivamente, la activated
chiave verrà impostata con un datetime
valore. Prima dell'attivazione dell'account, il valore predefinito sarà 0000-00-00 00:00:00
(nel caso in cui sia necessario eseguire una query per impostazione predefinita). Nel processo è presente anche la colonna tinyint
/ , che è impostata su se un utente è attivo.1
active
1
Il core stesso usa wpmu_activate_signup()
. Guardalo per alcuni esempi. Uno è il seguente che aggiorna una voce dell'utente per attivarla: rielaborata per essere leggibile.
$wpdb->update(
$wpdb->signups,
array(
'active' => 1,
'activated' => current_time( 'mysql', true ),
),
array( 'activation_key' => $key, )
);
Creazione di una query su account non ancora attivati
Lascia che WP faccia il duro lavoro:
global $wpdb;
$wpdb->delete(
$wpdb->signups,
array( 'user_login' => 'some_login', )
);
È possibile utilizzare il terzo argomento (array) se si utilizza un modulo (n admin) per eseguire tali richieste (ad esempio l'estensione di a WP_List_Table
) per indicare che si sta utilizzando una stringa. Tieni presente che devi ancora disinfettare i $_POST
valori. Suggerimento: è possibile utilizzare user_email
anche.
global $wpdb;
$wpdb->delete(
$wpdb->signups,
array( 'user_login' => 'some_login', ),
array( '%s', )
);