大家都知道,登錄WordPress管理后臺(tái)后,在屏幕左側(cè)有不同的管理菜單。您可能需要在某些情況下刪除/隱藏某些管理菜單,今天我們就來(lái)分享一下實(shí)現(xiàn)的方法。

例如,假設(shè)您有一個(gè)插件在管理菜單中添加了它的設(shè)置菜單。但是我們真的不想要或不需要菜單項(xiàng),因?yàn)樗鼉H占用寶貴的屏幕空間。因此,要從菜單中刪除該項(xiàng)目。
通過(guò)代碼刪除WordPress管理菜單
首頁(yè),我們按照新下面的步驟準(zhǔn)備一下:
- 點(diǎn)擊菜單鏈接
- 從瀏覽器的地址欄中復(fù)制頁(yè)面的網(wǎng)址
- 將該網(wǎng)址粘貼到便箋中或某處,稍后要用到
刪除一級(jí)菜單
將以下代碼添加到當(dāng)前主題(或子主題)的functions.php文件中:
function wpdaxue_remove_menu_item() {
remove_menu_page('menu-slug');
}
add_action('admin_menu', 'wpdaxue_remove_menu_item', 999);
接下來(lái),將代碼中的menu-slug替換為要?jiǎng)h除的菜單項(xiàng)的。例如,如果您的頁(yè)面網(wǎng)址如下所示:
https://example.com/wp-admin/edit.php?post_type=simple-pay
然后,您將edit.php?post_type=simple-pay用作菜單項(xiàng)。因此,最終代碼為:
function wpdaxue_remove_menu_item() {
remove_menu_page('edit.php?post_type=simple-pay');
}
add_action('admin_menu', 'wpdaxue_remove_menu_item', 999);
保存更改并完成。
刪除子菜單
假設(shè)我們找到的一級(jí)菜單和二級(jí)菜單的網(wǎng)址分別為:
主菜單:
http://aaaaa.cn/wp-admin/edit.php?post_type=astra-portfolio
子菜單1:
http://aaaaa.cn/wp-admin/edit-tags.php?taxonomy=astra-portfolio-other-categories&post_type=astra-portfolio
子菜單2:
http://aaaaa.cn/wp-admin/edit-tags.php?taxonomy=astra-portfolio-other-tags&post_type=astra-portfolio
那我們可以采用下面的代碼實(shí)現(xiàn)去掉上面兩個(gè)子菜單:
function astra_child_remove_menu_item() {
remove_submenu_page( 'edit.php?post_type=astra-portfolio', 'edit-tags.php?taxonomy=astra-portfolio-other-categories&post_type=astra-portfolio' );
remove_submenu_page( 'edit.php?post_type=astra-portfolio', 'edit-tags.php?taxonomy=astra-portfolio-tags&post_type=astra-portfolio' );
}
add_action('admin_menu', 'astra_child_remove_menu_item', 9999);
有關(guān)此方法的更多信息,請(qǐng)?jiān)L問(wèn)WordPress.org上的remove_menu_page()(一級(jí)菜單) 和 remove_submenu_page()(子菜單)。
刪除非管理員的菜單項(xiàng)
從安全角度出發(fā),有時(shí)候需要針對(duì)非管理員屏蔽一些管理菜單,以下代碼就是一個(gè)簡(jiǎn)單的示例:
function wpdaxue_remove_menu_item() {
if (!current_user_can('manage_options')) {
remove_menu_page('edit.php?post_type=simple-pay');
}
}
add_action('admin_menu', 'wpdaxue_remove_menu_item', 999);
在這里,我們使用current_user_can()函數(shù)來(lái)檢查當(dāng)前用戶是不是管理員。如果該用戶不是管理員用戶,則該菜單項(xiàng)將被刪除。
通過(guò)插件修改WordPress后臺(tái)管理菜單
如果你不會(huì)折騰代碼,或者你需要更靈活地設(shè)置多個(gè)菜單項(xiàng),那你可以考慮試試 Admin Menu Editor、Hide Admin Menu 、Remove admin menus by roles或 Adminimize。
拓展閱讀:
- 自定義排序WordPress后臺(tái)管理菜單
- WordPress后臺(tái)管理菜單編輯插件:Admin Menu Editor
- WordPress 在后臺(tái)管理菜單中使用Dashicons圖標(biāo)
- 將通知?dú)馀萏砑拥絎ordPress管理菜單的3種方法
- 詳解WordPress的用戶角色和能力/權(quán)限
- WordPress根據(jù)用戶角色顯示/隱藏某些后臺(tái)功能





請(qǐng)問(wèn)下這個(gè)目錄是插件實(shí)現(xiàn)的嗎?
我們的是集成主題的,你要用的話,可以試試插件 http://www.ydqwiac.cn/wordpress-table-of-content-plugins.html