Ticket #35137: 35137.patch
File 35137.patch, 1.8 KB (added by , 7 years ago) |
---|
-
wp-includes/taxonomy.php
1353 1353 1354 1354 // Meta query support. 1355 1355 $join = ''; 1356 $distinct = ''; 1356 1357 if ( ! empty( $args['meta_query'] ) ) { 1357 1358 $mquery = new WP_Meta_Query( $args['meta_query'] ); 1358 1359 $mq_sql = $mquery->get_sql( 'term', 't', 'term_id' ); … … 1359 1360 1360 1361 $join .= $mq_sql['join']; 1361 1362 $where .= $mq_sql['where']; 1363 $distinct .= "DISTINCT"; 1362 1364 } 1363 1365 1364 1366 $selects = array(); … … 1408 1410 1409 1411 $join .= " INNER JOIN $wpdb->term_taxonomy AS tt ON t.term_id = tt.term_id"; 1410 1412 1411 $pieces = array( 'fields', 'join', 'where', ' orderby', 'order', 'limits' );1413 $pieces = array( 'fields', 'join', 'where', 'distinct', 'orderby', 'order', 'limits' ); 1412 1414 1413 1415 /** 1414 1416 * Filter the terms query SQL clauses. … … 1424 1426 $fields = isset( $clauses[ 'fields' ] ) ? $clauses[ 'fields' ] : ''; 1425 1427 $join = isset( $clauses[ 'join' ] ) ? $clauses[ 'join' ] : ''; 1426 1428 $where = isset( $clauses[ 'where' ] ) ? $clauses[ 'where' ] : ''; 1429 $distinct = isset( $clauses[ 'distinct' ] ) ? $clauses[ 'distinct' ] : ''; 1427 1430 $orderby = isset( $clauses[ 'orderby' ] ) ? $clauses[ 'orderby' ] : ''; 1428 1431 $order = isset( $clauses[ 'order' ] ) ? $clauses[ 'order' ] : ''; 1429 1432 $limits = isset( $clauses[ 'limits' ] ) ? $clauses[ 'limits' ] : ''; 1430 1433 1431 $query = "SELECT $ fields FROM $wpdb->terms AS t $join WHERE $where $orderby $order $limits";1434 $query = "SELECT $distinct $fields FROM $wpdb->terms AS t $join WHERE $where $orderby $order $limits"; 1432 1435 1433 1436 // $args can be anything. Only use the args defined in defaults to compute the key. 1434 1437 $key = md5( serialize( wp_array_slice_assoc( $args, array_keys( $defaults ) ) ) . serialize( $taxonomies ) . $query );