情報を追記している場合はありますが、古い情報を訂正はしていませんので、公開年月日を参照してください。プラグイン・タグ、いずれもワードプレス・PHPのバージョン等によって動作しない場合もあります。
メニューを追加しているせいか、unset($menu[~]);では消えてくれなかったので、
function remove_menus () {
if (!current_user_can('level_10')) {
global $menu;
$restricted = array( __('Posts'), __('Media'), __('Links'), __('Pages'), __('Appearance'), __('Tools'), __('Users'), __('Settings'), __('Comments'), __('Plugins'), __('お問い合わせ'), __('Profile'));
end ($menu);
while (prev($menu)){
$value = explode(' ',$menu[key($menu)][0]);
if(in_array($value[0] != NULL?$value[0]:"" , $restricted)){unset($menu[key($menu)]);}
}
}
}
add_action('admin_menu', 'remove_menus');
この設定+User Role Editor で、Magic Fields で設定したライトパネルのうち特定のライトパネルのみを表示させた。*カテゴリーに紐付きなので必然的にそのカテゴリーしか投稿できない。
投稿画面で投稿欄以外の色々を非表示にするには *最後のpostpsp はPlatinum SEO Pack
function remove_default_post_screen_metaboxes() {
if (!current_user_can('level_10')) {
remove_meta_box( 'postcustom','post','normal' );
remove_meta_box( 'postexcerpt','post','normal' );
remove_meta_box( 'commentstatusdiv','post','normal' );
remove_meta_box( 'commentsdiv','post','normal' );
remove_meta_box( 'slugdiv','post','normal' ); //
remove_meta_box( 'revisionsdiv','post','normal' );
remove_meta_box( 'postpsp','post','normal' );
}
}
add_action('admin_menu','remove_default_post_screen_metaboxes');
特定のユーザーに対して設定する場合は
global $current_user;
get_currentuserinfo();
if ($current_user -> user_login == ‘xxxx’) {