Skip to:
Content

BuddyPress.org


Ignore:
Timestamp:
03/01/2023 08:17:11 AM (3 years 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-notifications/classes/class-bp-notifications-component.php

    r13414 r13432  
    100100     */
    101101    public function setup_globals( $args = array() ) {
    102         $bp = buddypress();
    103 
    104         // Define a slug, if necessary.
    105         if ( ! defined( 'BP_NOTIFICATIONS_SLUG' ) ) {
    106             define( 'BP_NOTIFICATIONS_SLUG', $this->id );
     102        $bp           = buddypress();
     103        $default_slug = $this->id;
     104
     105        // @deprecated.
     106        if ( defined( 'BP_NOTIFICATIONS_SLUG' ) ) {
     107            _doing_it_wrong( 'BP_NOTIFICATIONS_SLUG', esc_html__( 'Slug constants are deprecated.', 'buddypress' ), 'BuddyPress 12.0.0' );
     108            $default_slug = BP_NOTIFICATIONS_SLUG;
    107109        }
    108110
     
    121123        // Note that global_tables is included in this array.
    122124        $args = array(
    123             'slug'          => BP_NOTIFICATIONS_SLUG,
     125            'slug'          => $default_slug,
    124126            'has_directory' => false,
    125127            'search_string' => __( 'Search Notifications...', 'buddypress' ),
Note: See TracChangeset for help on using the changeset viewer.