Шар доступу до БД та видалення рядків
WordPress використовує wpdbклас для управління доступом до рівня бази даних за допомогою global $wpdb. Клас надає метод, призначений delete()для видалення рядків із таблиць:
$wpdb->delete( $table, $where, $where_format = null );
Багатовузловий таблиця і ключі активації
WordPress має деякі конкретні таблиці MU , де один {$wpdb->prefix}signups(префікс набору в вашому wp-config.phpфайлі). Таблиці схеми тут . Відповідальний за активацію облікового запису користувача є activation_key, який отримує набір після того як користувач натиснув на посилання поштою. Після цього activatedключ буде отримати набір з datetimeзначенням. Перед тим як обліковий запис буде активовано, то значення за замовчуванням буде 0000-00-00 00:00:00(в разі , якщо вам потрібно запит для значення за замовчуванням). Крім того, в процесі є tinyint/ 1стовпець active, який встановлений в 1разі , якщо користувач є активним.
Сам Core використовує wpmu_activate_signup(). Подивіться на це кілька прикладів. Одне з них полягає в тому, що оновлює запис користувача, щоб активувати його - переробляється для читання.
$wpdb->update(
$wpdb->signups,
array(
'active' => 1,
'activated' => current_time( 'mysql', true ),
),
array( 'activation_key' => $key, )
);
Створення запиту щодо ще не активованих облікових записів
Просто дозвольте WP зробити важку роботу:
global $wpdb;
$wpdb->delete(
$wpdb->signups,
array( 'user_login' => 'some_login', )
);
Ви можете використовувати 3-й аргумент (масив), якщо ви використовуєте форму (n адміністратор) для виконання цих запитів (наприклад, розширення a WP_List_Table), щоб вказати, що ви використовуєте рядок. Майте на увазі, що ви все ж повинні саніфікувати $_POSTзначення. Підказка: Ви також можете скористатися цим user_email.
global $wpdb;
$wpdb->delete(
$wpdb->signups,
array( 'user_login' => 'some_login', ),
array( '%s', )
);