Skip to:
Content

bbPress.org

Ticket #2713: 2713.diff

File 2713.diff, 4.1 KB (added by imath, 7 years ago)
  • src/includes/extend/buddypress/loader.php

     
    258258                        $user_domain = bp_loggedin_user_domain();
    259259                        $forums_link = trailingslashit( $user_domain . $this->slug );
    260260
     261                        $my_account_link       = trailingslashit( $forums_link );
     262                        $my_topics_link        = trailingslashit( $forums_link . bbp_get_topic_archive_slug() );
     263                        $my_replies_link       = trailingslashit( $forums_link . bbp_get_reply_archive_slug() );
     264                        $my_favorites_link     = trailingslashit( $forums_link . bbp_get_user_favorites_slug() );
     265                        $my_subscriptions_link = trailingslashit( $forums_link . bbp_get_user_subscriptions_slug() );
     266
     267                        // If BuddyPress is network activated and bbPress is
     268                        // not activated on a the root blog but on any child one
     269                        if ( bp_get_root_blog_id() != get_current_blog_id() ) {
     270                                $my_account_link       = bbp_get_user_profile_url();
     271                                $my_topics_link        = bbp_get_user_topics_created_url();
     272                                $my_replies_link       = bbp_get_user_replies_created_url();
     273                                $my_favorites_link     = bbp_get_favorites_permalink();
     274                                $my_subscriptions_link = bbp_get_subscriptions_permalink();
     275                        }
     276
    261277                        // Add the "My Account" sub menus
    262278                        $wp_admin_nav[] = array(
    263279                                'parent' => buddypress()->my_account_menu_id,
    264280                                'id'     => 'my-account-' . $this->id,
    265281                                'title'  => __( 'Forums', 'bbpress' ),
    266                                 'href'   => trailingslashit( $forums_link )
     282                                'href'   => $my_account_link
    267283                        );
    268284
    269285                        // Topics
     
    271287                                'parent' => 'my-account-' . $this->id,
    272288                                'id'     => 'my-account-' . $this->id . '-topics',
    273289                                'title'  => __( 'Topics Started', 'bbpress' ),
    274                                 'href'   => trailingslashit( $forums_link . bbp_get_topic_archive_slug() )
     290                                'href'   => $my_topics_link
    275291                        );
    276292
    277293                        // Replies
     
    279295                                'parent' => 'my-account-' . $this->id,
    280296                                'id'     => 'my-account-' . $this->id . '-replies',
    281297                                'title'  => __( 'Replies Created', 'bbpress' ),
    282                                 'href'   => trailingslashit( $forums_link . bbp_get_reply_archive_slug() )
     298                                'href'   => $my_replies_link
    283299                        );
    284300
    285301                        // Favorites
     
    287303                                'parent' => 'my-account-' . $this->id,
    288304                                'id'     => 'my-account-' . $this->id . '-favorites',
    289305                                'title'  => __( 'Favorite Topics', 'bbpress' ),
    290                                 'href'   => trailingslashit( $forums_link . bbp_get_user_favorites_slug() )
     306                                'href'   => $my_favorites_link
    291307                        );
    292308
    293309                        // Subscriptions
     
    295311                                'parent' => 'my-account-' . $this->id,
    296312                                'id'     => 'my-account-' . $this->id . '-subscriptions',
    297313                                'title'  => __( 'Subscribed Topics', 'bbpress' ),
    298                                 'href'   => trailingslashit( $forums_link . bbp_get_user_subscriptions_slug() )
     314                                'href'   => $my_subscriptions_link
    299315                        );
    300316                }
    301317
  • src/includes/extend/buddypress/members.php

     
    8585         * @return string
    8686         */
    8787        public function user_profile_url( $user_id ) {
     88                if ( bp_get_root_blog_id() != get_current_blog_id() ) {
     89                        return false;
     90                }
    8891
    8992                // Define local variable(s)
    9093                $profile_url    = '';
     
    127130         * @return string
    128131         */
    129132        public function get_favorites_permalink( $url, $user_id ) {
     133                if ( bp_get_root_blog_id() != get_current_blog_id() ) {
     134                        return $url;
     135                }
     136
    130137                $component_slug = bbpress()->extend->buddypress->slug;
    131138                $url            = trailingslashit( bp_core_get_user_domain( $user_id ) . $component_slug . '/' . bbp_get_user_favorites_slug() );
    132139                return $url;
     
    141148         * @return string
    142149         */
    143150        public function get_subscriptions_permalink( $url, $user_id ) {
     151                if ( bp_get_root_blog_id() != get_current_blog_id() ) {
     152                        return $url;
     153                }
     154
    144155                $component_slug = bbpress()->extend->buddypress->slug;
    145156                $url            = trailingslashit( bp_core_get_user_domain( $user_id ) . $component_slug . '/' . bbp_get_user_subscriptions_slug() );
    146157                return $url;