Making WordPress.org


Ignore:
Timestamp:
06/07/2018 04:32:31 AM (7 years ago)
Author:
dd32
Message:

Plugin Directory: Use WPORG_Ratings for the plugin rating/ratings when available.

Fixes #2606.

File:
1 edited

Legend:

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

    r6287 r7282  
    116116        $result['requires_php']  = get_post_meta( $post_id, 'requires_php', true ) ?: false;
    117117        $result['compatibility'] = array();
    118         $result['rating']        = ( get_post_meta( $post_id, 'rating', true ) ?: 0 ) * 20; // Stored as 0.0 ~ 5.0, API outputs as 0..100
    119         $result['ratings']       = array_map( 'intval', (array) get_post_meta( $post_id, 'ratings', true ) );
     118
     119        if ( class_exists( '\WPORG_Ratings' ) ) {
     120            $result['rating']  = \WPORG_Ratings::get_avg_rating( 'plugin', $post->post_name ) ?: 0;
     121            $result['ratings'] = \WPORG_Ratings::get_rating_counts( 'plugin', $post->post_name ) ?: array();
     122        } else {
     123            $result['rating']  = get_post_meta( $post->ID, 'rating', true ) ?: 0;
     124            $result['ratings'] = get_post_meta( $post->ID, 'ratings', true ) ?: array();
     125        }
     126
     127        $result['rating']  = $result['rating'] * 20; // Stored as 0.0 ~ 5.0, API outputs as 0..100
     128        $result['ratings'] = array_map( 'intval', $result['ratings'] );
    120129        krsort( $result['ratings'] );
    121130
Note: See TracChangeset for help on using the changeset viewer.