WordPress.org

Make WordPress Core

Ticket #17807: 17807.patch

File 17807.patch, 1.7 KB (added by billerickson, 7 years ago)
  • wp-includes/link-template.php

     
    11041104                return null;
    11051105
    11061106        $current_post_date = $post->post_date;
     1107       
     1108        if ( $in_same_cat && taxonomy_exists( $in_same_cat ) ) {
     1109                $taxonomy = $in_same_cat;
     1110        } else {
     1111                $taxonomy = 'category';
     1112        }
    11071113
    11081114        $join = '';
    11091115        $posts_in_ex_cats_sql = '';
     
    11111117                $join = " INNER JOIN $wpdb->term_relationships AS tr ON p.ID = tr.object_id INNER JOIN $wpdb->term_taxonomy tt ON tr.term_taxonomy_id = tt.term_taxonomy_id";
    11121118
    11131119                if ( $in_same_cat ) {
    1114                         $cat_array = wp_get_object_terms($post->ID, 'category', array('fields' => 'ids'));
    1115                         $join .= " AND tt.taxonomy = 'category' AND tt.term_id IN (" . implode(',', $cat_array) . ")";
     1120                        $cat_array = wp_get_object_terms($post->ID, $taxonomy, array('fields' => 'ids'));
     1121                        $join .= " AND tt.taxonomy = '" . $taxonomy ."' AND tt.term_id IN (" . implode(',', $cat_array) . ")";
    11161122                }
    11171123
    1118                 $posts_in_ex_cats_sql = "AND tt.taxonomy = 'category'";
     1124                $posts_in_ex_cats_sql = "AND tt.taxonomy = '" . $taxonomy ."'";
    11191125                if ( !empty($excluded_categories) ) {
    11201126                        $excluded_categories = array_map('intval', explode(' and ', $excluded_categories));
    11211127                        if ( !empty($cat_array) ) {
     
    11241130                        }
    11251131
    11261132                        if ( !empty($excluded_categories) ) {
    1127                                 $posts_in_ex_cats_sql = " AND tt.taxonomy = 'category' AND tt.term_id NOT IN (" . implode($excluded_categories, ',') . ')';
     1133                                $posts_in_ex_cats_sql = " AND tt.taxonomy = '" . $taxonomy . "' AND tt.term_id NOT IN (" . implode($excluded_categories, ',') . ')';
    11281134                        }
    11291135                }
    11301136        }