ユーザーの役割を既存のあなたのためにあなたのページのテンプレートにOR
条件を追加する場合は、[はい、それは、可能ですが(または表示)を表示条件。この条件は、ユーザーメタデータに設定されたカスタムフィールドに基づいています。
その「ボタン」をクリックすると、ユーザーカスタムフィールドの値が更新され、「プレミアムコンテンツ」(たとえば、)が表示されます。この目的のために、get_user_meta()
とupdate_user_meta()
ワードプレス関数を使用することができます。
あなたのPHPファイルやテンプレートの冒頭に2つの変数のことを最初に定義:
// Getting the user iD
$user_id = get_current_user_id();
// Looking if our user custom field exist and has a value
$custom_value = get_user_meta($user_id, '_custom_user_meta', true);
は、その後、あなたの状態は少しのようになるだろう:
if($user_role == 'premium' && $custom_value){
// Displays the premium content
}
今、あなたの上に押したとき"button"を押すと$ custom_valueがtrueに更新され、このユーザーはフォーム提出のプレミアムコンテンツ(またはajax)を見ることができます。
ですから、ちょうど上記の2つの変数の後に、このコードを配置する必要があります:これは動作するはず
if('yes' == $_post['button_id']){
// $custom_value and $user_id are already defined normally (see above)
if($custom_value){
update_user_meta($user_id, '_custom_user_meta', 0); // updated to false
} else {
update_user_meta($user_id, '_custom_user_meta', 1); // updated to true
}
}
...
更新(あなたのコメントに基づいて)
また、あなたのコメント、あなたは'administrator'
ユーザーあなたの条件での役割と(&&
)あなたの「ボタン」で設定される特別なクッキーをターゲットにすることができます。この方法では、カスタムフィールドを使用する必要はありません。
私の最初の思考/試みは、あなたが上で説明した行に沿って何かだったが、私はそれに複数の問題があると思う。 (1):自分の役割を永久に変更したくないという管理者だけが他の役割の仕組みを見たいと思っています:( (2):ボタンを何度も押してください (3):私はカスタム変数を使用するように強制しました - それが何か間違っているわけではありませんが、明らかに私は好きではありません:) – Mac