如何移除WordPress管理栏菜单项?LiteSpeed缓存菜单代码无效求助
解决WordPress移除LiteSpeed缓存管理菜单项的问题
你之前的代码无效,核心原因是remove_menu_page()需要传入的是菜单的slug(标识名),而不是带查询参数的完整URL。
方案1:移除整个LiteSpeed主菜单
如果想直接去掉整个LiteSpeed缓存的管理菜单,用下面的代码:
add_action( 'admin_menu', 'remove_litespeed_admin_menu', 999 ); function remove_litespeed_admin_menu() { // LiteSpeed主菜单的slug是'litespeed' remove_menu_page( 'litespeed' ); }
方案2:仅移除“清空所有缓存”子菜单项
如果只想删掉特定的“清空所有缓存”子菜单,需要通过全局$submenu数组定位并移除:
add_action( 'admin_menu', 'remove_litespeed_purge_submenu', 999 ); function remove_litespeed_purge_submenu() { global $submenu; // 确认LiteSpeed主菜单存在 if ( isset( $submenu['litespeed'] ) ) { // 遍历子菜单,匹配目标项(标题根据你的后台语言调整,中文是“清空所有缓存”,英文是“Purge All”) foreach ( $submenu['litespeed'] as $key => $menu_item ) { if ( $menu_item[0] === '清空所有缓存' ) { unset( $submenu['litespeed'][ $key ] ); break; } } } }
把上述任意一段代码添加到你子主题的functions.php文件末尾即可,操作前建议备份functions.php文件,避免语法错误导致网站异常。
内容的提问来源于stack exchange,提问作者DCode
相关产品推荐
相关产品推荐

