質問: 特定のユーザーロールからカスタム投稿タイプのui /メニューを隠すことは可能ですか? カスタム投稿タイプのuiを特定のユーザーロールから完全に非表示にすることを考えています...これらのcptを使用するためのアクセスを無効にする方法に関するリソースは多数ありますが、cpt uiを完全に非表示にすることはできません。どのユーザーがダッシュボードにログインしているかに基づいてすべてまとめて表示されます。クライアントがストアのカスタム投稿タイプを完全に使用しないようにする必要があるため、これは重要です。ダッシュボードでストアのcpt uiが表示される場合でも、機能が制限されていれば効果は変わりません。その結果、自分で製品を追加する方法について説明します。idは、プラグインでこれを実現しないことを本当に望んでいます。sbさん、どうもありがとう
回答: 管理者以外のユーザーから投稿タイプのメニュー項目を非表示にするにはfunction wpse28782_remove_menu_items() { if( !current_user_can( 'administrator' ) ): remove_menu_page( 'edit.php?post_type=your_post_type' ); endif; } add_action( 'admin_menu', 'wpse28782_remove_menu_items' ); your_post_typeはあなたの実際の投稿タイプの名前です。 編集 - あなたが削除できる他のメニューページ:remove_menu_page('edit.php'); // posts remove_menu_page('upload.php'); // media remove_menu_page('link-manager.php'); // links remove_menu_page('edit-comments.php'); // comments remove_menu_page('edit.php?post_type=page'); // pages remove_menu_page('plugins.php'); // plugins remove_menu_page('themes.php'); // appearance remove_menu_page('users.php'); // users remove_menu_page('tools.php'); // tools remove_menu_page('options-general.php'); // settings 編集2 - プラグインメニュー項目の削除.プラグインの場合、必要なのはpage=クエリ変数だけです。もう1つ注意すべきことは優先順位です。これはadmin_menu add_actionの3番目の引数です。プラグインがすでにメニューに追加されているように、十分に低く設定する必要があります(数字が大きいほど、優先順位は低くなります)。function wpse28782_remove_plugin_admin_menu() { if( !current_user_can( 'administrator' ) ): remove_menu_page('cart66_admin'); endif; } add_action( 'admin_menu', 'wpse28782_remove_plugin_admin_menu', 9999 );