WordPress.org

Make WordPress Core

Ticket #6035: wp-cat2tag.diff

File wp-cat2tag.diff, 1.5 KB (added by sillybean, 5 years ago)
  • wp-cat2tag.php

     
    107107<ul style="list-style:none"> 
    108108 
    109109<?php   $hier = _get_term_hierarchy('category'); 
     110                 $default = get_option('default_category'); 
    110111 
    111112                foreach ($this->all_categories as $category) { 
    112113                        $category = sanitize_term( $category, 'category', 'display' ); 
    113114 
    114                         if ( (int) $category->parent == 0 ) { ?> 
     115                        if ( ((int) $category->parent == 0 ) && ( $category->term_id != $default )) { ?> 
    115116 
    116117        <li><label><input type="checkbox" name="cats_to_convert[]" value="<?php echo intval($category->term_id); ?>" /> <?php echo $category->name . ' (' . $category->count . ')'; ?></label><?php 
    117118 
     
    222223                        return false; 
    223224                } 
    224225        } 
     226         
     227        function set_default_category() { 
     228                global $wpdb; 
     229                $default = get_option('default_category'); 
     230                $allposts = $wpdb->get_results("SELECT ID FROM $wpdb->posts WHERE post_type = 'post'"); 
     231                foreach ($allposts as $thispost) { 
     232                        $terms = array(); 
     233                        $terms = wp_get_post_categories($thispost->ID); 
     234                        if (empty($terms))  
     235                                wp_set_post_categories($thispost->ID, $default); 
     236                } 
     237                echo __('Set default category on orphaned posts.') 
     238        } 
    225239 
    226240        function convert_categories() { 
    227241                global $wpdb; 
     
    320334                        } 
    321335                } 
    322336                echo '</ul>'; 
     337                 
     338                $this->set_default_category(); 
    323339 
    324340                if ( ! empty($clean_term_cache) ) { 
    325341                        $clean_term_cache = array_unique(array_values($clean_term_cache));