我正在尝试创建一个动态buddypress选项卡,该选项卡链接到一个动态url,看起来像这样localhost/wordpress/slug/username
此选项卡应显示给访问其他用户配置文件的任何用户,单击时应重定向到访问的用户,而不是访问的用户,我的意思是,我的URL末尾的用户名应替换为访问的当前配置文件的用户名
我使用wp_redirect功能重定向用户到这个网址,但问题是我不知道如何写这个网址?
我试图创建一个变量,比如so$user=wp\u get\u current\u user()代码>像这样包含它
wp\u重定向(“http://localhost/wordpress/slug/$user-
请记住,我正在函数中编写代码。我的主题文件夹中的php文件
这就是我添加的代码
$user = wp_get_current_user();
add_action( 'bp_setup_nav', 'create_tab3', 303 );
function create_tab3() {
global $bp;
bp_core_new_nav_item(
array(
'name' => 'my name',
'slug' => 'slug',
'position' => 21,
'default_subnav_slug' => 'mySlug', // We add this submenu item below
'screen_function' => 'redirect_user_to_tab3',
)
);
}
function redirect_user_to_tab3(){
global $bp;
wp_redirect( "http://localhost/wordpress2/slug/$user->display_name" );
exit;
}
谢谢
将用户重定向到选项卡3
函数的作用域中没有$user
变量,因此$user-
您需要设置$user=wp\u get\u current\u user()代码>在函数中。
之后,阅读变量范围上的文档,因为它们在PHP中非常重要。
有人回答了我的问题,让我像这样修改代码中的最后一个函数
function redirect_user_to_tab3(){
$url = site_url() . '/slug/' . bp_get_displayed_user_username();
bp_core_redirect( $url );
}
而且效果很好,感谢所有帮助我的人