重定向自profile.php
到仪表板,有一种方法:
add_action( \'load-profile.php\', function() {
if( ! current_user_can( \'manage_options\' ) )
exit( wp_safe_redirect( admin_url() ) );
} );
如果当前用户无法管理选项,则重定向到仪表板。
重定向自profile.php
到当前用户的成员页面如果要重定向到成员的配置文件页面,可以尝试(未测试):
add_action( \'load-profile.php\', function() {
if( ! current_user_can( \'manage_options\' ) && function_exists( \'bp_core_get_user_domain\' ) )
exit( wp_safe_redirect( bp_core_get_user_domain( get_current_user_id() ) ) );
} );
The
bp_core_get_user_domain()
功能如中所述
this answer, 几年前,作者是@BooneGorges。
我刚查过BPsource 此功能在BP 2.3中仍然可用(请参见here).
对于PHP<;5.3
add_action( \'load-profile.php\', \'wpse_195353_profile_redirect_to_dashboard\' );
function wpse_195353_profile_redirect_to_dashboard()
{
if( ! current_user_can( \'manage_options\' ) )
exit( wp_safe_redirect( admin_url() ) );
}
以及
add_action( \'load-profile.php\', \'wpse_195353_profile_redirect_to_member_page\' );
function wpse_195353_profile_redirect_to_member_page()
{
if( ! current_user_can( \'manage_options\' ) && function_exists( \'bp_core_get_user_domain\' ) )
exit( wp_safe_redirect( bp_core_get_user_domain( get_current_user_id() ) ) );
}
但如果是这样的话,您应该考虑更新PHP。