Skip to:
Content

BuddyPress.org


Ignore:
Timestamp:
05/29/2023 05:51:12 AM (11 months ago)
Author:
imath
Message:

Make sure BP_Component::parse_query() always run

Only running it when BP Rewrites are on is not the right way to go as some plugins might have been using the WP Rewrites API for a while and might have extended this method from their component's class.

Instead of only running this method if BP Rewrites are on, we're adding a URL parser check inside each component having a directory to figure out whether it's needed to set BP URI globals.

See #4954
Fixes #8908
Closes https://github.com/buddypress/buddypress/pull/109

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/bp-core/classes/class-bp-core.php

    r13471 r13492  
    424424     */
    425425    public function parse_query( $query ) {
     426        /*
     427         * If BP Rewrites are not in use, no need to parse BP URI globals another time.
     428         * Legacy Parser should have already set these.
     429         */
     430        if ( 'rewrites' !== bp_core_get_query_parser() ) {
     431            return parent::parse_query( $query );
     432        }
     433
    426434        $is_search = $query->get( 'pagename' ) === bp_get_search_slug() || ( isset( $_GET['bp_search'] ) && 1 === (int) $_GET['bp_search'] );
    427435
Note: See TracChangeset for help on using the changeset viewer.