ユーザー用に多くのフィールドが追加されています。ログインユーザーが役割Wを持ち、役割Xのユーザーに属するユーザーページを表示している場合、フィールドYを表示します。それ以外の場合、フィールドYは表示されません。
ルールの統合があり、イベント:フィールドがレンダリングされ、アクション:フィールドを非表示にすることを提供する「フィールドフォーマッター条件」という名前のモジュールを使用してみました。ただし、フィールドを非表示にするアクションを選択すると、構成するものは何もなく、保存ボタンが表示されます。
目標を達成する方法を提案してください。解決策がルールに基づいている場合は、こちらをお勧めします。
@Pierreの提案に従って、モジュール Field Permissions をダウンロードしてインストールする必要があります。
ここで、アクセス許可を適用するYフィールドが見つかります。
次に[ユーザー]リンクをクリックすると、フォームにリダイレクトされます。
ここでは、私と同じようにカスタム権限を追加できます。
Field Permissions モジュールを使用すると、実際のソリューションに近づくと思います。
...サイト管理者は、任意のエンティティのフィールドを編集、表示、作成するためのフィールドレベルの権限を設定できます。
それがすべての要件をカバーするかどうかはわかりませんが、パズルの解決策の一部になる可能性があります。確かにそれを使用して、「ログインしたユーザーが特定の役割を持っている場合はユーザープロファイルのフィールドを非表示にする」(質問のタイトルのように)。
ログインしたユーザーがロールWを持ち、ロールXのユーザーに属するユーザーページを表示している場合、フィールドYを表示します。それ以外の場合、フィールドYは表示されません。
Field Permissions を使用してフィールドYを構成し、このフィールドがshownで、WのロールとhiddenロールWを持たないユーザーには、これはおそらく考慮されません "...のユーザーに属するユーザーページロールX ... "。