WordPress.org

Make WordPress Core

Ticket #14368: query_allowed_keys.patch

File query_allowed_keys.patch, 1.2 KB (added by wjm, 8 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                                }