カスタムフィールドテンプレートでユーザーごとに表示する項目を変更する

harada 162views 更新:2015年8月11日

基本的な方法はこちらを参考にしてください。
Custom Field Templateで投稿とカスタム投稿を紐付ける

「PHP CODE (Experimental Option)」では普通にPHPが利用できるため、ログイン中のユーザーIDを取得して表示内容を変更することが可能です。

user_idが3の人だけカテゴリIDが7のカスタム投稿のみ表示したい場合は「PHP CODE (Experimental Option)」に以下のように記述します。

$user = wp_get_current_user();
$user_id = $user->get('id');//ログイン中のユーザーID を取得
$values = array();
if($user_id == '3') { 
$posts = get_posts(array( 
'post_type' => 'template_text', 
'cat' => 7,
 'numberposts' => -1)); 
} else {
$posts = get_posts(array( 
'post_type' => 'template_text', 
 'numberposts' => -1)); 
}
foreach($posts as $post) { 
$values[] = $post->ID;
$valueLabels[] = $post->post_title; 
}

関連:Custom Field Templateで投稿とカスタム投稿とカスタムタクソノミーを紐付ける

ログイン / 新規登録してコメントする

このソースコードをストックして後で利用したり、作業に利用したソースコードをまとめることができます。

こちらもお役に立つかもしれません