Skip to:
Content

BuddyPress.org


Ignore:
Timestamp:
03/01/2023 08:17:11 AM (19 months ago)
Author:
imath
Message:

BP Rewrites: introduce the bp_rewrites_get_url() function

Its role is to build every BuddyPress URL using the BP Rewrites API.

This commit also deprecates softly some key functions like bp_get_root_domain() to let us review (thanks to deprecated notices) all BuddyPress links during 12.0 development cycle and make them use the introduced bp_rewrites_get_url() function or a wrapper of it. Once all replacements achieved, we'll need to fully deprecate:

  • bp_get_root_domain()
  • bp_root_domain()
  • bp_core_get_root_domain()

Slug constants have also been completely deprecated as we will be able to customize every slugs from the future "URL" tab of the BuddyPress settings page.

The $bp->root_domain BuddyPress global has been deprecated in favor of $bp->root_url.

Finally, the Components $rewrite_ids properties are now in place and corresponding rewrite rules are successfully generated.

Props r-a-y, johnjamesjacoby, boonebgorges

Closes https://github.com/buddypress/buddypress/pull/69
See #4954

File:
1 edited

Legend:

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

    r13414 r13432  
    9595     * Setup globals.
    9696     *
    97      * The BP_SETTINGS_SLUG constant is deprecated, and only used here for
    98      * backwards compatibility.
     97     * The BP_SETTINGS_SLUG constant is deprecated.
    9998     *
    10099     * @since 1.5.0
     
    105104     */
    106105    public function setup_globals( $args = array() ) {
    107 
    108         // Define a slug, if necessary.
    109         if ( ! defined( 'BP_SETTINGS_SLUG' ) ) {
    110             define( 'BP_SETTINGS_SLUG', $this->id );
     106        $default_slug = $this->id;
     107
     108        // @deprecated.
     109        if ( defined( 'BP_SETTINGS_SLUG' ) ) {
     110            _doing_it_wrong( 'BP_SETTINGS_SLUG', esc_html__( 'Slug constants are deprecated.', 'buddypress' ), 'BuddyPress 12.0.0' );
     111            $default_slug = BP_SETTINGS_SLUG;
    111112        }
    112113
    113114        // All globals for settings component.
    114115        parent::setup_globals( array(
    115             'slug'          => BP_SETTINGS_SLUG,
     116            'slug'          => $default_slug,
    116117            'has_directory' => false,
    117118        ) );
Note: See TracChangeset for help on using the changeset viewer.