Шар доступу до БД та видалення рядків
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', )
);