WordPress.org

Make WordPress Core

Ticket #17807: 17807.patch

File 17807.patch, 1.7 KB (added by billerickson, 3 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        }