Changeset 18350 for trunk/wp-includes/post.php
- Timestamp:
- 06/27/2011 08:47:04 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/wp-includes/post.php
r18261 r18350 3449 3449 } 3450 3450 3451 $orderby_array = array(); 3452 $allowed_keys = array('author', 'post_author', 'date', 'post_date', 'title', 'post_title', 'modified', 3453 'post_modified', 'modified_gmt', 'post_modified_gmt', 'menu_order', 'parent', 'post_parent', 3454 'ID', 'rand', 'comment_count'); 3455 foreach ( explode( ',', $sort_column ) as $orderby ) { 3456 $orderby = trim( $orderby ); 3457 if ( !in_array( $orderby, $allowed_keys ) ) 3458 continue; 3459 3460 switch ( $orderby ) { 3461 case 'menu_order': 3462 break; 3463 case 'ID': 3464 $orderby = "$wpdb->posts.ID"; 3465 break; 3466 case 'rand': 3467 $orderby = 'RAND()'; 3468 break; 3469 case 'comment_count': 3470 $orderby = "$wpdb->posts.comment_count"; 3471 break; 3472 default: 3473 if ( 0 === strpos( $orderby, 'post_' ) ) 3474 $orderby = "$wpdb->posts." . $orderby; 3475 else 3476 $orderby = "$wpdb->posts.post_" . $orderby; 3477 } 3478 3479 $orderby_array[] = $orderby; 3480 3481 } 3482 $sort_column = ! empty( $orderby_array ) ? implode( ',', $orderby_array ) : "$wpdb->posts.post_title"; 3483 3484 $sort_order = strtoupper( $sort_order ); 3485 if ( '' !== $sort_order && !in_array( $sort_order, array( 'ASC', 'DESC' ) ) ) 3486 $sort_order = 'ASC'; 3487 3451 3488 $query = "SELECT * FROM $wpdb->posts $join WHERE ($where_post_type) $where "; 3452 3489 $query .= $author_query;
Note: See TracChangeset
for help on using the changeset viewer.