web-dev-qa-db-ja.com

承認されたユーザーのみを取得する(最終メンバープラグイン)

UltimateMember を使用しています。管理者が最初に登録ユーザーを承認する必要があるように設定されています。教員、電子メールなどの承認されたユーザーのメタ情報をテーマに表示します。そのため、このページテンプレートでは、すべての登録ユーザー情報を取得するための次のコードブロックを使用しています。

<?php
$args = array(
    'role' => 'contributor',
);

$users = get_users( $args );

foreach ( $users as $user ) {
    echo '<span>' . esc_html( $user->user_email ) . '</span>';
    echo '<span>' . esc_html( $user->faculty ) . '</span>';
    echo '<span>' . esc_html( $user->graduation_year ) . '</span>';
}

問題は、私のコードブロックが、管理者によって承認されているかどうかにかかわらず、すべての登録ユーザー情報を表示していることです。

1
Mohamed Mokhtar

WPの設定は

  1. 新規ユーザーデフォルトロール=投稿者

そうであれば、このコードブロックは、account_status = authorizedを持つすべての寄稿者を表示します。

$args = array(
    'role'          =>  'contributor',
    'meta_key'      =>  'account_status',
    'meta_value'    =>  'approved'
);

$users = get_users($args);

foreach ($users as $user) {
   echo '<pre>';
   print_r( $user );
   echo '</pre>';
}

https://codex.wordpress.org/Function_Reference/get_users

2
Webloper

Ultimate Memberと呼ばれるプラグインには、Ultimate Member設定> Userロールを介してこの機能があります。

プラグインのURL: https://wordpress.org/plugins/ultimate-member/

0