フィールドレベルでのアクセス許可。これはできますか?

私は特定のグループ/権限
‘eventeer’をユーザに割り当てる公開登録フォームプロセスを持っています。このユーザーはログインし、「共有」セクションに情報を入力/編集できます。
「共用」は、両方のadmins + eventeerグループが同じadmin cpセクション形式を使用することを意味します。

問題:私は、「eventeer」に公開したいのではなく、adminのためだけに公開する1つのフィールドを持っています。これはクラフトv2.6
+および/またはプラグインで達成できますか?

前もって感謝します。

ベストアンサー

Not natively, but there’s the Control Panel Body Classes plugin, which
would enable you to add the handle for your “eventeers” User Group
as a CSS classname to the
<body> tag (i.e.
body.usergroup-eventeers, if “eventeers” is the handle
for your User Group).

そのクラス名を使用すると、コントロールパネルにCSSを追加することができます( CPCSSプラグイン)を使用して特定のフィールドを非表示にします。次のようなもの:

body.usergroup-eventeers #fields-yourFieldHandle-field {
    display: none;
}

…or, if it makes sense, you could flip it around and have your
field hidden by default, and visible only if the
<body> has the .userlevel-admin
classname – which would in effect hide the field from everybody
except people w/ admin accounts:

#fields-yourFieldHandle-field {
    display: none;
}

body.userlevel-admin #fields-yourFieldHandle-field {
    display: block;
}

(明らかに、フィールドセレクタの yourFieldHandle
の部分をフィールドの実際のハンドルに変更する必要があります)。

いずれにしても、これはフィールドがまだ存在するという意味では安全なソリューションではなく、技術に精通した「eventeer」ユーザーはフィールドを削除して簡単に表示させることができます上記のCSSルールは、ブラウザの開発ツールに含まれています。しかし、クラフトの現在の反復では、あなたが望むものを達成するために来るほど近くにあります。

返信を残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です