多数のカスタム投稿タイプとタクソノミーを追加しているので、それらをすべて管理メニューの最上位レベルに追加しないと、視覚的に明確になることがよくあります。代わりに、適切なサブメニューの下に追加したいと思います。この 2 段階のアプローチを使用して、あまり労力をかけずにそれを行いました。
- CPT の登録時に「show_ui」プロパティを使用して CPT を非表示にする
- add_submenu_page() 呼び出しを使用してそれらを追加し直します
たとえば、「会社」と呼ばれる CPT の add_submenu_page 呼び出しの例を次に示します。
add_submenu_page (LG_ADMIN_MENU,"Companies","Companies","manage_options",'edit.php?post_type=companies');
これらの 2 つの手順を実行すると、CPT を表示できるようになり、既存の属性を変更できます。レコードを削除することもできますが、レコードを追加することはできません。「新規追加」ボタンをクリックすると、「無効な投稿タイプ」としか表示されない白い画面が表示されます。
ここで、単純に通常のトップレベル メニューをオンにすると (他のすべての設定はそのままにしておきます)、メニューがサブメニュー (add_submenu_page 呼び出しから) とトップレベル メニューの両方として表示されるようになります ( 「show_ui」で元に戻り、問題なく新しいアイテムを追加できます。