WordPress.org

Make WordPress Core

Ticket #5059: clean_stp_tags_importer.patch

File clean_stp_tags_importer.patch, 4.3 KB (added by momo360modena, 7 years ago)
  • stp.php

     
    11<?php 
    2  
    32class STP_Import { 
    4  
    53        function header()  { 
    64                echo '<div class="wrap">'; 
    75                echo '<h2>'.__('Import Simple Tagging').'</h2>'; 
     
    1917                echo '<p>'.__('To accommodate larger databases for those tag-crazy authors out there, we have made this into an easy 4-step program to help you kick that nasty Simple Tagging habit. Just keep clicking along and we will let you know when you are in the clear!').'</p>'; 
    2018                echo '<p><strong>'.__('Don&#8217;t be stupid - backup your database before proceeding!').'</strong></p>'; 
    2119                echo '<form action="admin.php?import=stp&amp;step=1" method="post">'; 
    22                 wp_nonce_field('import-utw'); 
     20                wp_nonce_field('import-stp'); 
    2321                echo '<p class="submit"><input type="submit" name="submit" value="'.__('Step 1 &raquo;').'" /></p>'; 
    2422                echo '</form>'; 
    2523                echo '</div>'; 
    2624        } 
    2725 
    28  
    2926        function dispatch () { 
    3027                if ( empty( $_GET['step'] ) ) { 
    3128                        $step = 0; 
    3229                } else { 
    3330                        $step = (int) $_GET['step']; 
    3431                } 
    35  
    3632                // load the header 
    3733                $this->header(); 
    38  
    3934                switch ( $step ) { 
    4035                        case 0 : 
    4136                                $this->greet(); 
    4237                                break; 
    4338                        case 1 : 
    44                                 check_admin_referer('import-utw'); 
     39                                check_admin_referer('import-stp'); 
    4540                                $this->import_posts(); 
    4641                                break; 
    4742                        case 2: 
    48                                 check_admin_referer('import-utw'); 
     43                                check_admin_referer('import-stp'); 
    4944                                $this->import_t2p(); 
    5045                                break; 
    5146                        case 3: 
    52                                 check_admin_referer('import-utw'); 
     47                                check_admin_referer('import-stp'); 
    5348                                $this->cleanup_import(); 
    5449                                break; 
    5550                } 
    56  
    5751                // load the footer 
    5852                $this->footer(); 
    5953        } 
     
    7266                        return false; 
    7367                } 
    7468                else { 
    75  
    7669                        // if there's an existing entry, delete it 
    7770                        if ( get_option('stpimp_posts') ) { 
    7871                                delete_option('stpimp_posts'); 
    7972                        } 
    80  
     73                         
    8174                        add_option('stpimp_posts', $posts); 
    82  
    83  
    8475                        $count = count($posts); 
    85  
    8676                        echo '<p>' . sprintf( __('Done! <strong>%s</strong> tag to post relationships were read.'), $count ) . '<br /></p>'; 
    87  
    8877                } 
    8978 
    9079                echo '<form action="admin.php?import=stp&amp;step=2" method="post">'; 
    91                 wp_nonce_field('import-utw'); 
     80                wp_nonce_field('import-stp'); 
    9281                echo '<p class="submit"><input type="submit" name="submit" value="'.__('Step 2 &raquo;').'" /></p>'; 
    9382                echo '</form>'; 
    9483                echo '</div>'; 
    95  
    9684        } 
    9785 
    9886 
    9987        function import_t2p ( ) { 
    100  
    10188                echo '<div class="narrow">'; 
    10289                echo '<p><h3>'.__('Adding Tags to Posts&#8230;').'</h3></p>'; 
    103  
     90                 
    10491                // run that funky magic! 
    10592                $tags_added = $this->tag2post(); 
    106  
     93                 
    10794                echo '<p>' . sprintf( __('Done! <strong>%s</strong> tags where added!'), $tags_added ) . '<br /></p>'; 
    108  
    10995                echo '<form action="admin.php?import=stp&amp;step=3" method="post">'; 
    110                 wp_nonce_field('import-utw'); 
     96                wp_nonce_field('import-stp'); 
    11197                echo '<p class="submit"><input type="submit" name="submit" value="'.__('Step 3 &raquo;').'" /></p>'; 
    11298                echo '</form>'; 
    11399                echo '</div>'; 
    114  
    115100        } 
    116101 
    117  
    118102        function get_stp_posts ( ) { 
    119  
    120103                global $wpdb; 
    121  
    122104                // read in all the posts from the STP post->tag table: should be wp_post2tag 
    123105                $posts_query = "SELECT post_id, tag_name FROM " . $wpdb->prefix . "stp_tags"; 
    124  
    125106                $posts = $wpdb->get_results($posts_query); 
    126  
    127107                return $posts; 
    128  
    129108        } 
    130109 
    131  
    132110        function tag2post ( ) { 
    133111                global $wpdb; 
    134112 
     
    142120                foreach ( $posts as $this_post ) { 
    143121                        $the_post = (int) $this_post->post_id; 
    144122                        $the_tag = $wpdb->escape($this_post->tag_name); 
    145  
    146123                        // try to add the tag 
    147124                        wp_add_post_tags($the_post, $the_tag); 
    148  
    149125                        $tags_added++; 
    150  
    151126                } 
    152127 
    153128                // that's it, all posts should be linked to their tags properly, pending any errors we just spit out! 
    154129                return $tags_added; 
    155  
    156  
    157130        } 
    158131 
    159  
    160132        function cleanup_import ( ) { 
    161  
    162133                delete_option('stpimp_posts'); 
    163  
    164134                $this->done(); 
    165  
    166135        } 
    167136 
    168  
    169137        function done ( ) { 
    170  
    171138                echo '<div class="narrow">'; 
    172139                echo '<p><h3>'.__('Import Complete!').'</h3></p>'; 
    173  
    174140                echo '<p>' . __('OK, so we lied about this being a 4-step program! You&#8217;re done!') . '</p>'; 
    175  
    176141                echo '<p>' . __('Now wasn&#8217;t that easy?') . '</p>'; 
    177  
    178142                echo '</div>'; 
    179  
    180143        } 
    181144 
    182  
    183145        function STP_Import ( ) { 
    184  
    185146                // Nothing. 
    186  
    187147        } 
    188  
    189148} 
    190149 
    191  
    192150// create the import object 
    193151$stp_import = new STP_Import(); 
    194152 
    195153// add it to the import page! 
    196154register_importer('stp', 'Simple Tagging', __('Import Simple Tagging tags into the new native tagging structure.'), array($stp_import, 'dispatch')); 
    197  
    198 ?> 
     155?> 
     156 No newline at end of file