Я создал пользовательский столбец для пользователей WordPress, который называется «Проверка».После регистрации в WooCommerce пользователю отправляется электронное письмо с просьбой подтвердить свою электронную почту и, таким образом, аккаунт.Эта информация хранится в базе данных под usermeta (wp_usermeta)
как мета-ключ, и этот ключ называется is_activated
.
Вот код длянастраиваемый столбец:
add_action('manage_users_columns','account_verification_status_column');
function account_verification_status_column($column_headers) {
unset($column_headers['posts']);
$column_headers['account_verification'] = 'Verification Status';
return $column_headers;
}
function make_verification_status_column_sortable( $columns ) {
$columns['account_verification'] = 'Verification Status';
return $columns;
}
add_filter( 'manage_users_sortable_columns', 'make_verification_status_column_sortable' );
Сейчас я пытаюсь выяснить, как извлечь данные из таблицы usermeta и, в данном случае, meta_key
is_activated
.Вот что я попробовал:
add_action('manage_users_custom_column', 'account_verification_information', 10, 3);
function account_verification_information($status = '1') {
global $wpdb;
$has_user_verified = $wpdb->get_var( $wpdb->prepare(
"SELECT COUNT(*) FROM $wpdb->users
LEFT JOIN $wpdb->usermeta ON $wpdb->users.ID = $wpdb->usermeta.user_id
WHERE meta_key = 'is_activated'
AND meta_value = '$status';"
, $level ));
return $has_user_verified;
$check_verification = account_verification_information(1);
if ( $column_name === account_verification ) {
echo $check_verification;
} else {
echo '<span class="na">Not yet Verified</span>';
}
}
Надеемся, что, взглянув на него, вы «поймете».Мне нужно, чтобы он показывал «Verified», если значение равно 1, и «Not Verified», если значение равно 0.
Я пробовал так много разных версий этого, что я теряюсь.
Любая помощь высоко ценится.