Make WordPress Core

Ticket #12750: 12750.2.diff

File 12750.2.diff, 2.4 KB (added by stephdau, 14 years ago)

Patch refresh and patch created from site root, not from within wp-includes

  • wp-includes/post.php

     
    15591559 * @since 2.5.0
    15601560 *
    15611561 * @param string|array $mime_types List of mime types or comma separated string of mime types.
     1562 * @param string $table_alias Optional. Specify a table alias, if needed. 
    15621563 * @return string The SQL AND clause for mime searching.
    15631564 */
    1564 function wp_post_mime_type_where($post_mime_types) {
     1565function wp_post_mime_type_where($post_mime_types, $table_alias = '') {
    15651566        $where = '';
    15661567        $wildcards = array('', '%', '%/%');
    15671568        if ( is_string($post_mime_types) )
     
    15891590                        return '';
    15901591
    15911592                if ( false !== strpos($mime_pattern, '%') )
    1592                         $wheres[] = "post_mime_type LIKE '$mime_pattern'";
     1593                        $wheres[] = empty($table_alias) ? "post_mime_type LIKE '$mime_pattern'" : "$table_alias.post_mime_type LIKE '$mime_pattern'";
    15931594                else
    1594                         $wheres[] = "post_mime_type = '$mime_pattern'";
     1595                        $wheres[] = empty($table_alias) ? "post_mime_type = '$mime_pattern'" : "$table_alias.post_mime_type = '$mime_pattern'";
    15951596        }
    15961597        if ( !empty($wheres) )
    15971598                $where = ' AND (' . join(' OR ', $wheres) . ') ';
  • wp-includes/query.php

     
    20272027                                $post_ids = get_objects_in_term($term_ids, $taxonomy);
    20282028                                if ( !is_wp_error($post_ids) && !empty($post_ids) ) {
    20292029                                        $whichcat .= " AND $wpdb->posts.ID IN (" . implode(', ', $post_ids) . ") ";
    2030                                         if ( '' === $post_type ) {
     2030                                        if ( empty($post_type) ) {
    20312031                                                $post_type = 'any';
    20322032                                                $post_status_join = true;
    20332033                                        } elseif ( in_array('attachment', (array)$post_type) ) {
    20342034                                                $post_status_join = true;
    20352035                                        }
    2036                                         $q['post_status'] = 'publish';
     2036                                        if ( empty($q['post_status']) )
     2037                                                $q['post_status'] = 'publish';
    20372038                                } else {
    20382039                                        $whichcat = " AND 0 ";
    20392040                                }
     
    20842085
    20852086                // MIME-Type stuff for attachment browsing
    20862087
    2087                 if ( isset($q['post_mime_type']) && '' != $q['post_mime_type'] )
    2088                         $whichmimetype = wp_post_mime_type_where($q['post_mime_type']);
     2088                if ( isset($q['post_mime_type']) && '' != $q['post_mime_type'] ) {
     2089                        $table_alias = $post_status_join ? $wpdb->posts : '';
     2090                        $whichmimetype = wp_post_mime_type_where($q['post_mime_type'], $table_alias);
     2091                }
    20892092
    20902093                $where .= $search . $whichcat . $whichauthor . $whichmimetype;
    20912094