私はWordPressの管理者メニューからexport.phpページを削除しようとしています - >マルチサイト用のツールなので、ネットワーク管理者だけがそれを見ることができます
私はこれまでのところ次のようなコードを持っていますが、それを動かすことができません。
//***************************************************
// Remove export Page
//***************************************************
function remove_menu_export_pages() {
remove_menu_page('export.php');
}
add_action( 'admin_init', 'remove_menu_export_pages' );
どうすればこれを解決できますか?
WordPressの機能に疑問があるときはいつでも、Codexを参照してください。 Function_Reference/remove_menu_page 。
正しい関数は remove_submenu_page
がadmin_menu
にフックされています。
add_action( 'admin_menu', 'remove_submenu_wpse_82873' );
function remove_submenu_wpse_82873()
{
global $current_user;
get_currentuserinfo();
// If user not Super Admin remove export page
if ( !is_super_admin() )
{
remove_submenu_page( 'tools.php', 'export.php' );
}
}
そして、あなたはおそらくURLアドレス(http://example.com/wp-admin/export.php
)を通してそのページへの直接アクセスをブロックしたいと思うでしょう:
add_action( 'admin_head-export.php', 'prevent_url_access_wpse_82873' );
function prevent_url_access_wpse_82873()
{
global $current_user;
// Only Super Admin Authorized, exit if user not
if ( !is_super_admin() ) {
// User not authorized to access page, redirect to dashboard
wp_redirect( admin_url( 'index.php' ) );
exit;
}
}
簡単な作業コードは次のとおりです。
add_filter( 'bp_settings_show_user_data_page', 'logan_plz_remove_export_data_tab_from_myprofile' );
function logan_plz_remove_export_data_tab_from_myprofile($filter) {
return false;
}
functions.php。にこのコードを書いてください