web-dev-qa-db-ja.com

単一のフロントエンドユーザーとしての複数のバックエンドユーザー

複数のバックエンドユーザーを1人のフロントエンドユーザーにマッピングする良い方法はありますか?

基本的に私は次のことをしたいのですが、私たちは複数の人によって管理されているブログをホストしています。したがって、user1、user2、およびuser3をログとして使用する方法が必要ですが、フロントエンドでは(実質的に)単一のユーザーにして(たとえばMrXYなど)、プロファイルページへの単一のリンク、単一のユーザーにする必要があります。毎回データベースをハックする必要なしに、gravatarと単一の名前から取得する電子メールアドレス。

私はコメント用に追加のアカウントを共有の資格情報で使うことができることを知っていますが、これはしたくありません。誰かが悪い仕事をしたのかどうかを判断できるようにいい仕事。

そして私が忘れる前に、私たちはbbpressも使用し、ユーザーが自分自身を登録することを許可します。そのため、すべてのアカウントをマッピングしても解決策はありません。それはeditor-adminすべてが1つの指定されたアカウントにマップする必要があります。

1
Christoph Daum

カスタム ユーザーメタフィールド をそれらすべてに添付します。チェックボックスそれから、あなたのテンプレートで、単にユーザーのメタフィールドを照会し、それが チェックされていれば 、ユーザープロファイルフィールドの代わりに共有ユーザー名を出力するだけです。他のユーザーに使用します。

ユーザーがその「グループ」に自分自身を添付できないようにするには、そのプロファイルフィールドの追加を次のようにラップする必要があります。

if ( current_user_can( 'manage_options' ) ) { ... }

管理者ロールが割り当てられているユーザーのような「トップ」ユーザーに制限します。

2
kaiser