WordPress.org

Making WordPress.org

Changeset 3165


Ignore:
Timestamp:
05/18/2016 02:35:40 AM (5 years ago)
Author:
dd32
Message:

Plugin Directory: Allow querying by user favorites.
See #1577

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sites/trunk/wordpress.org/public_html/wp-content/plugins/plugin-directory/class-plugin-directory.php

    r3134 r3165  
    167167
    168168        // Add the browse/* views.
     169        // TODO: browse/favorites/$user
    169170        add_rewrite_tag( '%browse%', '(featured|popular|beta|new|favorites)' );
    170171        add_permastruct( 'browse', 'browse/%browse%' );
     
    358359
    359360            case 'favorites':
    360                 // TODO: Current stored as bbPress id's
     361                $favorites_user = get_current_user_id();
     362                if ( !empty( $wp_query->query_vars['favorites_user'] ) ) {
     363                    $favorites_user = $wp_query->query_vars['favorites_user'];
     364                } elseif ( !empty( $_GET['favorites_user'] ) ) {
     365                    $favorites_user = $_GET['favorites_user'];
     366                }
     367                if ( ! is_numeric( $favorites_user ) ) {
     368                    $favorites_user = get_user_by( 'slug', $favorites_user );
     369                    if ( $favorites_user ) {
     370                        $favorites_user = $favorites_user->ID;
     371                    }
     372                }
     373
     374                if ( $favorites_user ) {
     375                    $wp_query->query_vars['post_name__in'] = get_user_meta( $favorites_user, 'plugin_favorites', true );
     376                }
     377                if ( ! $favorites_user || ! $wp_query->query_vars['post_name__in'] ) {
     378                    $wp_query->query_vars['p'] = -1;
     379                }
    361380                break;
    362381
Note: See TracChangeset for help on using the changeset viewer.