【问题标题】:Create a dynamic buddypress tab创建动态 buddypress 选项卡
【发布时间】:2016-02-11 15:14:53
【问题描述】:

我正在尝试创建一个动态 buddypress 选项卡,该选项卡链接到一个动态 url,看起来像这样 localhost/wordpress/slug/username

这个标签应该出现给任何访问另一个用户的个人资料的用户,并且当点击它应该重定向到用户访问而不是用户访问,我的意思是我的 URL 末尾的用户名应该被替换为用户名当前访问的个人资料

我正在使用 wp_redirect 函数将用户重定向到此 url,但问题是我不知道如何编写此 url?

我试图创建一个像 $user = wp_get_current_user(); 这样的变量来包含它像这样 wp_redirect( "http://localhost/wordpress/slug/$user->display_name" ); 但最终结果是 http://localhost/wordpress2/slug/ 我什至不确定我应该调用这个函数当前用户所以请有人帮助我

请记住,我正在主题文件夹中的 function.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;
}

谢谢

【问题讨论】:

    标签: php wordpress url dynamic buddypress


    【解决方案1】:

    您的redirect_user_to_tab3 函数在其范围内没有$user 变量,因此$user->display_name 未定义。

    您需要在函数中设置$user = wp_get_current_user();

    之后,read the docs on variable scope,因为它们在 PHP 中非常重要。

    【讨论】:

    • ahhh 非常感谢,但是它只解决了一半的问题,因为现在当我访问另一个用户的个人资料并从他的个人资料中单击此选项卡时,它会将我重定向到我的页面(它会更改用户名用我的),,, 更清楚地说我是 user1 所以当我从我的个人资料中单击选项卡时我想要这个 url localhost/wordpress/slug/user1 ,,, 但是如果我从 user2 的个人资料中单击选项卡然后我想要这个 url localhost/wordpress/slug/user2
    • 我知道我应该调用不同于wp_get_current_user(); 的东西,但我不知道它是什么,,,你能告诉我
    【解决方案2】:

    有人回答了我的问题并告诉我像这样更改代码中的最后一个函数

    function redirect_user_to_tab3(){
        $url = site_url() . '/slug/' . bp_get_displayed_user_username();
        bp_core_redirect( $url );
    }
    

    它运行良好,,,, 感谢所有帮助我的人

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-04
      • 2017-07-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多