WordPress.org

Make WordPress Core

Ticket #14368: query_allowed_keys.patch

File query_allowed_keys.patch, 1.2 KB (added by wjm, 5 years ago)
  • query.php

     
    21282128                        $q['orderby'] = ''; 
    21292129                } else { 
    21302130                        // Used to filter values 
    2131                         $allowed_keys = array('author', 'date', 'title', 'modified', 'menu_order', 'parent', 'ID', 'rand', 'comment_count'); 
     2131                        $allowed_keys = array( 'ID', 'author', 'date', 'date_gmt', 'title', 'status', 'comment_status', 'ping_status', 'name', 'modified', 'modified_gmt', 'parent', 'menu_order', 'type', 'mime_type', 'comment_count', 'rand', ); 
    21322132                        if ( !empty($q['meta_key']) ) { 
    21332133                                $allowed_keys[] = $q['meta_key']; 
    21342134                                $allowed_keys[] = 'meta_value'; 
     
    21482148                                        case 'menu_order': 
    21492149                                                break; 
    21502150                                        case 'ID': 
    2151                                                 $orderby = "$wpdb->posts.ID"; 
     2151                                        case 'comment_status': 
     2152                                        case 'ping_status': 
     2153                                        case 'comment_count': 
     2154                                                $orderby = "$wpdb->posts." . $orderby; 
    21522155                                                break; 
    21532156                                        case 'rand': 
    21542157                                                $orderby = 'RAND()'; 
     
    21602163                                        case 'meta_value_num': 
    21612164                                                $orderby = "$wpdb->postmeta.meta_value+0"; 
    21622165                                                break; 
    2163                                         case 'comment_count': 
    2164                                                 $orderby = "$wpdb->posts.comment_count"; 
    2165                                                 break; 
    21662166                                        default: 
    21672167                                                $orderby = "$wpdb->posts.post_" . $orderby; 
    21682168                                }