0

管理者 (通常の管理者ではなくカスタム定義のユーザー ロール) がオプション ページにアクセスし、特定のユーザー名をテキスト ボックスに入力し、送信を押して、そのユーザーに 2 番目のユーザー ロールを追加できるプラグインを作成しようとしています。 . 私はこのコードを知っています:

    $user = new WP_User( null, 'username' );
    $user->add_role( 'admin' );

ユーザー名が「username」のユーザーに「admin」ロールを追加します。したがって、プラグインの設定ページには、テキスト ボックスがあります。

Add an Admin: <input type="text" size="57" name="sscaur_options[txt_admin]" value="<?php echo $options['txt_admin']; ?>" />

そして最後にこれ:

function sscaur_add_admin($textbox) {
    $options = get_option('sscaur_options');
    $textbox = $options['txt_admin'];
    $user = new WP_User( null, '{$textbox}' );
    $user->add_role( 'admin' );
    return $textbox;

}

私はそれが完全に間違っていることを知っていますが、それを正しくする方法がわかりません.

ユーザー ロール エディター プラグインを使用して 2 番目のユーザー ロールを追加できることはわかっていますが、これは実際の管理者にのみアクセス権を付与するようにハードコーディングされており、完全な管理者にならずに特定のユーザーにロールを追加できるようにするには、カスタム ユーザー ロールが必要です。

4

0 に答える 0