WordPress.org

Plugin Directory

Changeset 473713


Ignore:
Timestamp:
12/12/11 02:18:26 (2 years ago)
Author:
tollmanz
Message:
  • Fixed situation where the plugin will conflict with other changes to the term page columns. Thanks to DUCKBOY1981.
  • Updated code to comply with WordPress coding standards
Location:
custom-taxonomy-sort/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • custom-taxonomy-sort/trunk/custom-taxonomy-sort.php

    r433300 r473713  
    2727// Version check 
    2828global $wp_version; 
    29 $exit_msg = __("The Custom Taxonomy Sort plugin requires the use of Wordpress 3.0 or higher. Please update!", 'custom-taxonomy-sort'); 
    30 if(version_compare($wp_version, "3.0", "<")) exit($exit_msg); 
     29$exit_msg = __( "The Custom Taxonomy Sort plugin requires the use of Wordpress 3.0 or higher. Please update!", 'custom-taxonomy-sort' ); 
     30if ( version_compare( $wp_version, "3.0", "<" ) ) exit( $exit_msg ); 
    3131 
    3232// Avoid name collision 
    33 if(!class_exists('CustomTaxonomySort')) : 
     33if ( ! class_exists( 'CustomTaxonomySort' ) ) : 
    3434 
    3535/** 
    3636 * CustomTaxonomySort class. 
    3737 */ 
    38 class CustomTaxonomySort 
    39 { 
     38class CustomTaxonomySort { 
    4039    /** 
    4140     * Variable will hold the control types 
     
    7069    /** 
    7170     * __construct function. 
    72      *  
    73      * @access public 
    74      * @return void 
    75      */ 
    76     function __construct() 
    77     { 
     71     */ 
     72    function __construct() { 
    7873        // Include the Simple Term Meta plugin which is necessary for the UI only if the plugin isn't already installed 
    79         if(!function_exists('simple_term_meta_install')) 
    80             include(plugin_dir_path(__FILE__).'/includes/simple-term-meta.php'); 
     74        if ( ! function_exists( 'simple_term_meta_install' ) ) 
     75            include(plugin_dir_path(__FILE__).'/includes/simple-term-meta.php' ); 
    8176 
    8277        // Install the plugin 
    83         register_activation_hook( __FILE__, array(&$this, 'install')); 
     78        register_activation_hook( __FILE__, array( &$this, 'install' ) ); 
    8479         
    8580        // Prepare the class variables 
     
    8782                     
    8883        // Call taxonomy metadata functions 
    89         add_action('init', array(&$this, 'add_taxonomy_actions'), 100, 0); 
     84        add_action( 'init', array( &$this, 'add_taxonomy_actions' ), 100, 0); 
    9085         
    9186        // Add settings page 
    92         add_action('admin_menu', array(&$this, 'add_settings_actions')); 
     87        add_action( 'admin_menu', array( &$this, 'add_settings_actions' ) ); 
    9388         
    9489        // Setup settings fields 
    95         add_action('admin_init', array(&$this, 'settings_init')); 
     90        add_action( 'admin_init', array( &$this, 'settings_init' ) ); 
    9691         
    9792        // Apply the filter that changes the sort order 
    98         add_filter('get_terms', array(&$this, 'get_terms'), 10, 3); 
     93        add_filter( 'get_terms', array( &$this, 'get_terms' ), 10, 3); 
    9994 
    10095        // Apply the filter that changes the sort order 
    101         add_filter('wp_get_object_terms', array(&$this, 'wp_get_object_terms'), 10, 4); 
     96        add_filter( 'wp_get_object_terms', array( &$this, 'wp_get_object_terms' ), 10, 4); 
    10297 
    10398        // Apply filter for the get_the_terms 
    104         add_filter('get_the_terms', array(&$this, 'get_the_terms'), 10, 3); 
     99        add_filter( 'get_the_terms', array( &$this, 'get_the_terms' ), 10, 3); 
    105100         
    106101        // Apply the filter to catch the custom sort 
    107         add_filter('get_terms_orderby', array(&$this, 'get_terms_orderby'), 10, 2); 
     102        add_filter( 'get_terms_orderby', array( &$this, 'get_terms_orderby' ), 10, 2); 
    108103         
    109104        // Add JS for admin 
    110         add_action('admin_enqueue_scripts', array(&$this, 'add_admin_scripts')); 
     105        add_action( 'admin_enqueue_scripts', array( &$this, 'add_admin_scripts' ) ); 
    111106         
    112107        // Set up form elements in quick edit 
    113         add_action('admin_init', array(&$this, 'add_quick_edit_action')); 
    114          
    115         //add_filter('posts_clauses', array(&$this, 'order_clauses'), 10, 2); 
     108        add_action( 'admin_init', array( &$this, 'add_quick_edit_action' ) ); 
     109         
     110        //add_filter( 'posts_clauses', array( &$this, 'order_clauses' ), 10, 2); 
    116111    } 
    117112     
     
    122117     * @return void 
    123118     */ 
    124     function CustomTaxonomySort() 
    125     { 
     119    function CustomTaxonomySort() { 
    126120        $this->__construct(); 
    127121    } 
     
    133127     * @return void 
    134128     */ 
    135     function install() 
    136     { 
     129    function install() { 
    137130        // Fire the Simple Term Meta installation function on activation 
    138131        simple_term_meta_install(); 
     
    141134        $options['control_type'] = $this->control_types[0]['key']; 
    142135        $options['sort_order'] = $this->sort_orders[0]['key']; 
    143         if(!get_option($this->options_name)) 
    144             update_option($this->options_name, $options); 
     136        if ( ! get_option( $this->options_name ) ) 
     137            update_option( $this->options_name, $options ); 
    145138    } 
    146139     
     
    152145     * @return void 
    153146     */ 
    154     function process_class_vars() 
    155     { 
     147    function process_class_vars() { 
    156148        // Set up control types. First value is the default 
    157149        $this->control_types = array( 
    158150            array( 
    159151                'key' => 'on', 
    160                 'value' => __('On', $this->plugin_name) 
     152                'value' => __( 'On', $this->plugin_name ) 
    161153            ), 
    162154            array( 
    163155                'key' => 'off', 
    164                 'value' => __('Off', $this->plugin_name) 
     156                'value' => __( 'Off', $this->plugin_name ) 
    165157            ) 
    166158        ); 
     
    170162            array( 
    171163                'key' => 'ASC', 
    172                 'value' => __('Ascending', $this->plugin_name) 
     164                'value' => __( 'Ascending', $this->plugin_name ) 
    173165            ), 
    174166            array( 
    175167                'key' => 'DESC', 
    176                 'value' => __('Descending', $this->plugin_name) 
     168                'value' => __( 'Descending', $this->plugin_name ) 
    177169            ) 
    178170        ); 
     
    185177     * @return void 
    186178     */ 
    187     function add_taxonomy_actions() 
    188     { 
     179    function add_taxonomy_actions() { 
    189180        // Add actions for adding and editing order for all taxonomies 
    190         foreach(get_taxonomies() as $taxonomy => $name) 
    191         {                
     181        foreach ( get_taxonomies() as $taxonomy => $name ) { 
    192182            // Custom data for taxonomy 
    193             add_action($name.'_add_form_fields', array(&$this, 'metabox_add'), 10, 1); 
    194             add_action($name.'_edit_form_fields', array(&$this, 'metabox_edit'), 10, 1); 
    195             add_action('created_'.$name, array(&$this, 'save_meta_data'), 10, 1);    
    196             add_action('edited_'.$name, array(&$this, 'save_meta_data'), 10, 1); 
     183            add_action( $name.'_add_form_fields', array( &$this, 'metabox_add' ), 10, 1 ); 
     184            add_action( $name.'_edit_form_fields', array( &$this, 'metabox_edit' ), 10, 1 ); 
     185            add_action( 'created_'.$name, array( &$this, 'save_meta_data' ), 10, 1 ); 
     186            add_action( 'edited_'.$name, array( &$this, 'save_meta_data' ), 10, 1 ); 
    197187             
    198188            // Adds columns for taxonomy pages 
    199             add_filter("manage_edit-{$name}_columns", array(&$this, 'column_header'), 10, 1); 
    200             //add_filter("manage_edit-{$name}_sortable_columns", array(&$this, 'column_header_sortable'), 10, 1); 
    201             add_filter("manage_{$name}_custom_column", array(&$this, 'column_value'), 10, 3); 
     189            add_filter( "manage_edit-{$name}_columns", array( &$this, 'column_header' ), 10, 1 ); 
     190            //add_filter("manage_edit-{$name}_sortable_columns", array( &$this, 'column_header_sortable' ), 10, 1); 
     191            add_filter( "manage_{$name}_custom_column", array( &$this, 'column_value' ), 10, 3 ); 
    202192        } 
    203193    } 
     
    209199     * @return void 
    210200     */ 
    211     function add_admin_scripts() 
    212     { 
     201    function add_admin_scripts() { 
    213202        global $pagenow; 
    214203         
    215204        // Only add JS and CSS on the edit-tags page 
    216         if($pagenow == 'edit-tags.php') 
    217         { 
     205        if ( $pagenow == 'edit-tags.php' ) { 
    218206            // Register JS 
    219207            wp_register_script( 
    220208                'custom-taxonomy-sort-js', 
    221                 plugins_url('/js/custom-taxonomy-sort.js', __FILE__), 
    222                 array('jquery'), 
     209                plugins_url( '/js/custom-taxonomy-sort.js', __FILE__ ), 
     210                array( 'jquery' ), 
    223211                $this->version 
    224212            ); 
    225             wp_enqueue_script('custom-taxonomy-sort-js'); 
     213            wp_enqueue_script( 'custom-taxonomy-sort-js' ); 
    226214             
    227215            // Register CSS 
    228216            wp_register_style( 
    229217                'custom-taxonomy-sort-css', 
    230                 plugins_url('/css/custom-taxonomy-sort.css', __FILE__), 
     218                plugins_url( '/css/custom-taxonomy-sort.css', __FILE__ ), 
    231219                false, 
    232220                $this->version, 
    233221                false 
    234222            ); 
    235             wp_enqueue_style('custom-taxonomy-sort-css'); 
     223            wp_enqueue_style( 'custom-taxonomy-sort-css' ); 
    236224        } 
    237225    } 
     
    244232     * @return void 
    245233     */ 
    246     function metabox_add($tag)  
    247     { 
     234    function metabox_add( $tag ) { 
    248235    ?> 
    249236        <div class="form-field"> 
    250             <label for="tax-order"><?php _e('Order', $this->plugin_name) ?></label> 
     237            <label for="tax-order"><?php _e( 'Order', $this->plugin_name ) ?></label> 
    251238            <input name="tax-order" id="tax-order" type="text" value="" size="40" aria-required="true" /> 
    252             <p class="description"><?php _e('Determines the order in which the term is displayed.', $this->plugin_name); ?></p> 
     239            <p class="description"><?php _e( 'Determines the order in which the term is displayed.', $this->plugin_name ); ?></p> 
    253240        </div> 
    254241    <?php 
     
    262249     * @return void 
    263250     */  
    264     function metabox_edit($tag)  
    265     { 
     251    function metabox_edit( $tag ) { 
    266252    ?> 
    267253        <tr class="form-field"> 
    268254            <th scope="row" valign="top"> 
    269                 <label for="tax-order"><?php _e('Order', $this->plugin_name); ?></label> 
     255                <label for="tax-order"><?php _e( 'Order', $this->plugin_name ); ?></label> 
    270256            </th> 
    271257            <td> 
    272                 <input name="tax-order" id="tax-order" type="text" value="<?php echo get_term_meta($tag->term_id, 'tax-order', true); ?>" size="40" aria-required="true" /> 
    273                 <p class="description"><?php _e('Determines the order in which the term is displayed.', $this->plugin_name); ?></p> 
     258                <input name="tax-order" id="tax-order" type="text" value="<?php echo get_term_meta( $tag->term_id, 'tax-order', true ); ?>" size="40" aria-required="true" /> 
     259                <p class="description"><?php _e( 'Determines the order in which the term is displayed.', $this->plugin_name ); ?></p> 
    274260            </td> 
    275261        </tr> 
     
    284270     * @return void 
    285271     */ 
    286     function save_meta_data($term_id) 
    287     { 
     272    function save_meta_data( $term_id ) { 
    288273        // Only save the value if it is present and it is a number 
    289         if(isset($_POST['tax-order']) && is_numeric($_POST['tax-order']))  
     274        if ( isset( $_POST['tax-order'] ) && is_numeric( $_POST['tax-order'] ) ) 
    290275            $order = $_POST['tax-order'];  
    291         elseif($current_order = get_term_meta($term_id, 'tax-order', true)) 
     276        elseif ( $current_order = get_term_meta( $term_id, 'tax-order', true ) ) 
    292277            $order = $current_order; 
    293278        else 
    294279            $order = 0; 
    295280             
    296         update_term_meta( $term_id, 'tax-order', $order);      
     281        update_term_meta( $term_id, 'tax-order', absint( $order ) ); 
    297282    } 
    298283 
     
    304289     * @param mixed $taxonomies 
    305290     * @param mixed $args 
    306      * @return void 
    307      */ 
    308     function get_terms($terms, $taxonomies, $args) 
    309     {        
     291     * @return int|array 
     292     */ 
     293    function get_terms( $terms, $taxonomies, $args ) { 
    310294        // If the current control type is not automatic, return the terms unless it's explicitly set to be sorted by custom_sort 
    311         if($this->get_control_type() == 'off' && $args['orderby'] != $this->orderby_parameter) return $terms; 
     295        if ( $this->get_control_type() == 'off' && $args['orderby'] != $this->orderby_parameter ) return $terms; 
    312296     
    313297        // Controls behavior when get_terms is called at unusual times resulting in a terms array without objects 
     
    319303 
    320304        // Add taxonomy order to terms 
    321         foreach($terms as $term) 
    322         { 
     305        foreach ( $terms as $term ) { 
    323306            // Only set tax_order if value is an object 
    324             if(is_object($term)) 
    325             { 
    326                 if($taxonomy_sort = get_term_meta($term->term_id, 'tax-order', true)) 
    327                 { 
    328                     $term->tax_order = (int) $taxonomy_sort; 
     307            if ( is_object( $term ) ) { 
     308                if ( $taxonomy_sort = get_term_meta( $term->term_id, 'tax-order', true ) ) { 
     309                    $term->tax_order = ( int ) $taxonomy_sort; 
    329310                    $ordered_terms[] = $term; 
    330                 } 
    331                 else 
    332                 { 
     311                } else { 
    333312                    // This catches any terms that don't have tax-order set 
    334                     $term->tax_order = (int) 0; 
     313                    $term->tax_order = ( int ) 0; 
    335314                    $unordered_terms[] = $term; 
    336315                } 
     
    341320         
    342321        // Only sort by tax_order if there are items to sort, otherwise return the original array 
    343         if(!$empty && count($ordered_terms) > 0) 
    344             $this->quickSort($ordered_terms); 
     322        if ( ! $empty && count( $ordered_terms ) > 0) 
     323            $this->quickSort( $ordered_terms ); 
    345324        else 
    346325            return $terms; 
    347326 
    348327        // By default, the array is sorted ASC; sort DESC if needed 
    349         if( 
    350             ($args['orderby'] == $this->orderby_parameter && $args['order'] == 'DESC') || 
     328        if (  
     329            ($args['orderby'] == $this->orderby_parameter && $args['order'] == 'DESC' ) || 
    351330            ($args['orderby'] != $this->orderby_parameter && $this->get_sort_order() == 'DESC' ) 
    352         ) krsort($ordered_terms); 
     331        ) krsort( $ordered_terms ); 
    353332 
    354333        // Combine the newly ordered items with the unordered items and return 
    355         return array_merge($ordered_terms, $unordered_terms);    
     334        return array_merge( $ordered_terms, $unordered_terms ); 
    356335    } 
    357336     
     
    366345     * @return array Array of sorted object terms 
    367346     */ 
    368     function wp_get_object_terms($terms, $object_ids, $taxonomies, $args) 
    369     { 
     347    function wp_get_object_terms( $terms, $object_ids, $taxonomies, $args ) { 
    370348        // At this point, the $object_ids have already been used to get terms associated with the desired objects 
    371349        // As such, the resulting terms just need to be run through the custom sorting routine 
    372         return $this->get_terms($terms, $taxonomies, $args); 
     350        return $this->get_terms( $terms, $taxonomies, $args ); 
    373351    } 
    374352 
     
    381359     * @return array Array of sorted object terms 
    382360     */ 
    383     function get_the_terms($terms, $id, $taxonomy) 
    384     { 
    385         return $this->get_terms($terms, $taxonomy, $this->orderby_parameter); 
     361    function get_the_terms( $terms, $id, $taxonomy ) { 
     362        return $this->get_terms( $terms, $taxonomy, $this->orderby_parameter ); 
    386363    } 
    387364 
     
    397374     * @return string New orderby text 
    398375     */ 
    399     function get_terms_orderby($orderby, $args) 
    400     { 
    401         if($orderby == $this->orderby_parameter)  
     376    function get_terms_orderby( $orderby, $args ) { 
     377        if ( $orderby == $this->orderby_parameter ) 
    402378            return ''; 
    403379        else 
     
    413389     * @return void 
    414390     */ 
    415     function quickSort(&$array) 
    416     { 
     391    function quickSort( &$array ) { 
    417392        $cur = 1; 
    418393        $stack[1]['l'] = 0; 
    419         $stack[1]['r'] = count($array)-1; 
    420          
    421         do 
    422         { 
     394        $stack[1]['r'] = count( $array ) - 1; 
     395         
     396        do { 
    423397            $l = $stack[$cur]['l']; 
    424398            $r = $stack[$cur]['r']; 
    425399            $cur--; 
    426400         
    427             do 
    428             { 
     401            do { 
    429402                $i = $l; 
    430403                $j = $r; 
    431                 $tmp = $array[(int)( ($l+$r)/2 )]; 
     404                $tmp = $array[ ( int )( ( $l + $r ) / 2 ) ]; 
    432405             
    433406                // partion the array in two parts. 
    434407                // left from $tmp are with smaller values, 
    435408                // right from $tmp are with bigger ones 
    436                 do 
    437                 { 
     409                do { 
    438410                    while( $array[$i]->tax_order < $tmp->tax_order ) 
    439411                    $i++; 
     
    443415                 
    444416                    // swap elements from the two sides 
    445                     if( $i <= $j) 
    446                     { 
     417                    if (  $i <= $j ) { 
    447418                         $w = $array[$i]; 
    448419                         $array[$i] = $array[$j]; 
     
    453424                    } 
    454425                 
    455                 }while( $i <= $j ); 
     426                } while ( $i <= $j ); 
    456427                 
    457                 if( $i < $r ) 
    458                 { 
     428                if (  $i < $r ) { 
    459429                    $cur++; 
    460430                    $stack[$cur]['l'] = $i; 
     
    463433                $r = $j; 
    464434                 
    465             }while( $l < $r ); 
     435            } while ( $l < $r ); 
    466436                 
    467         }while( $cur != 0 ); 
     437        } while ( $cur != 0 ); 
    468438    } 
    469439 
     
    474444     * @return void 
    475445     */ 
    476     function add_settings_actions() 
    477     { 
     446    function add_settings_actions() { 
    478447        // Add the options page 
    479         add_submenu_page('options-general.php', __('Custom Taxonomy Sort Settings', $this->plugin_name), __('Custom Taxonomy Sort', $this->plugin_name), 'manage_options', 'custom-taxonomy-sort-settings', array(&$this, 'settings_page'));     
     448        add_submenu_page( 'options-general.php', __( 'Custom Taxonomy Sort Settings', $this->plugin_name ), __( 'Custom Taxonomy Sort', $this->plugin_name ), 'manage_options', 'custom-taxonomy-sort-settings', array( &$this, 'settings_page' ) ); 
    480449    } 
    481450 
     
    486455     * @return void 
    487456     */ 
    488     function settings_page()  
    489     { 
     457    function settings_page() { 
    490458    ?> 
    491459        <div class="wrap">  
    492         <div id="icon-options-general" class="icon32"><br /></div><h2><?php _e('Custom Taxonomy Sort Settings', $this->plugin_name); ?></h2> 
     460        <div id="icon-options-general" class="icon32"><br /></div><h2><?php _e( 'Custom Taxonomy Sort Settings', $this->plugin_name ); ?></h2> 
    493461        <form action="options.php" method="post"> 
    494         <?php settings_fields('custom-taxonomy-sort-settings'); ?> 
    495         <?php do_settings_sections('custom-taxonomy-sort-fields'); ?> 
    496         <p class="submit"><input type="submit" name="submit" id="submit" class="button-primary" value="<?php _e('Save Changes', $this->plugin_name); ?>" /></p> 
     462        <?php settings_fields( 'custom-taxonomy-sort-settings' ); ?> 
     463        <?php do_settings_sections( 'custom-taxonomy-sort-fields' ); ?> 
     464        <p class="submit"><input type="submit" name="submit" id="submit" class="button-primary" value="<?php _e( 'Save Changes', $this->plugin_name ); ?>" /></p> 
    497465        </form></div> 
    498466    <?php 
     
    505473     * @return void 
    506474     */ 
    507     function settings_init() 
    508     { 
    509         register_setting('custom-taxonomy-sort-settings', $this->options_name, array(&$this, 'settings_validate')); 
    510         add_settings_section('custom-taxonomy-sort-options', __('General', $this->plugin_name), array(&$this, 'settings_page_text'), 'custom-taxonomy-sort-fields'); 
     475    function settings_init() { 
     476        register_setting( 'custom-taxonomy-sort-settings', $this->options_name, array( &$this, 'settings_validate' ) ); 
     477        add_settings_section( 'custom-taxonomy-sort-options', __( 'General', $this->plugin_name ), array( &$this, 'settings_page_text' ), 'custom-taxonomy-sort-fields' ); 
    511478         
    512479        // Add control types inputs 
    513         add_settings_field('custom-taxonomy-sort-control-type', __('Automatic Sort', $this->plugin_name), array(&$this, 'control_type_string'), 'custom-taxonomy-sort-fields', 'custom-taxonomy-sort-options'); 
     480        add_settings_field( 'custom-taxonomy-sort-control-type', __( 'Automatic Sort', $this->plugin_name ), array( &$this, 'control_type_string' ), 'custom-taxonomy-sort-fields', 'custom-taxonomy-sort-options' ); 
    514481         
    515482        // Add sort orders inputs 
    516         add_settings_field('custom-taxonomy-sort-orders', __('Sort Order', $this->plugin_name), array(&$this, 'sort_orders_string'), 'custom-taxonomy-sort-fields', 'custom-taxonomy-sort-options'); 
     483        add_settings_field( 'custom-taxonomy-sort-orders', __( 'Sort Order', $this->plugin_name ), array( &$this, 'sort_orders_string' ), 'custom-taxonomy-sort-fields', 'custom-taxonomy-sort-options' ); 
    517484    } 
    518485     
     
    522489     * @access public 
    523490     * @param $input array Values that will be sent to the database 
    524      * @return void 
    525      */ 
    526     function settings_validate($input) 
    527     { 
     491     * @return array 
     492     */ 
     493    function settings_validate( $input ) { 
    528494        // Make sure control_type is a valid value 
    529         if(isset($input['control_type'])) 
    530         { 
     495        if ( isset( $input['control_type'] ) ) { 
    531496            $valid_control_type = false; 
    532             foreach($this->control_types as $key => $value) { 
    533                 if($value['key'] == $input['control_type']) $valid_control_type = true; 
     497            foreach ( $this->control_types as $key => $value ) { 
     498                if ( $value['key'] == $input['control_type'] ) $valid_control_type = true; 
    534499            } 
    535             if(!$valid_control_type) $input['control_type'] = $this->control_type_default[0]['key']; 
     500            if ( ! $valid_control_type ) $input['control_type'] = $this->control_type_default[0]['key']; 
    536501        } 
    537502 
    538503        // Make sure sort_order is a valid value 
    539         if(isset($input['sort_order'])) 
     504        if ( isset( $input['sort_order'] ) ) 
    540505        { 
    541506            $valid_sort_order = false; 
    542             foreach($this->sort_orders as $key => $value) { 
    543                 if($value['key'] == $input['sort_order']) $valid_sort_order = true; 
     507            foreach ( $this->sort_orders as $key => $value ) { 
     508                if ( $value['key'] == $input['sort_order'] ) $valid_sort_order = true; 
    544509            } 
    545             if(!$valid_sort_order) $input['sort_order'] = $this->sort_orders[0]['key']; 
     510            if ( ! $valid_sort_order ) $input['sort_order'] = $this->sort_orders[0]['key']; 
    546511        } 
    547512        return $input; 
     
    554519     * @return void 
    555520     */ 
    556     function settings_page_text() 
    557     { 
     521    function settings_page_text() { 
    558522    ?> 
    559         <p><?php _e('Sort Management', $this->plugin_name); ?></p> 
     523        <p><?php _e( 'Sort Management', $this->plugin_name ); ?></p> 
    560524    <?php 
    561525    } 
     
    567531     * @return void 
    568532     */ 
    569     function control_type_string() 
    570     { 
     533    function control_type_string() { 
    571534        // Get the current control type setting 
    572535        $current_control_type = $this->get_control_type(); 
    573536    ?> 
    574         <fieldset><legend class="screen-reader-text"><span><?php _e('Control Type', $this->plugin_name); ?></span></legend>  
    575         <?php foreach ($this->control_types as $key => $value) : ?> 
    576             <label title="<?php echo $value['key']; ?>"><input type="radio" name="custom-taxonomy-sort-settings[control_type]" value="<?php echo $value['key']; ?>" <?php if($current_control_type == $value['key']) : ?>checked='checked'<?php endif; ?> /> <span><?php echo $value['value']; ?></span></label><br /> 
     537        <fieldset><legend class="screen-reader-text"><span><?php _e( 'Control Type', $this->plugin_name ); ?></span></legend> 
     538        <?php foreach ( $this->control_types as $key => $value ) : ?> 
     539            <label title="<?php echo $value['key']; ?>"><input type="radio" name="custom-taxonomy-sort-settings[control_type]" value="<?php echo $value['key']; ?>" <?php if ( $current_control_type == $value['key'] ) : ?>checked='checked'<?php endif; ?> /> <span><?php echo $value['value']; ?></span></label><br /> 
    577540        <?php endforeach; ?> 
    578541        </fieldset> 
     
    586549     * @return void 
    587550     */ 
    588     function sort_orders_string() 
    589     { 
     551    function sort_orders_string() { 
    590552        // Get the current control type setting 
    591553        $current_control_type = $this->get_sort_order(); 
    592554    ?> 
    593         <fieldset><legend class="screen-reader-text"><span><?php _e('Sort Order', $this->plugin_name); ?></span></legend>  
    594         <?php foreach ($this->sort_orders as $key => $value) : ?> 
    595             <label title="<?php echo $value['key']; ?>"><input type="radio" name="custom-taxonomy-sort-settings[sort_order]" value="<?php echo $value['key']; ?>" <?php if($current_control_type == $value['key']) : ?>checked='checked'<?php endif; ?> /> <span><?php echo $value['value']; ?></span></label><br /> 
     555        <fieldset><legend class="screen-reader-text"><span><?php _e( 'Sort Order', $this->plugin_name ); ?></span></legend> 
     556        <?php foreach ( $this->sort_orders as $key => $value ) : ?> 
     557            <label title="<?php echo $value['key']; ?>"><input type="radio" name="custom-taxonomy-sort-settings[sort_order]" value="<?php echo $value['key']; ?>" <?php if ( $current_control_type == $value['key'] ) : ?>checked='checked'<?php endif; ?> /> <span><?php echo $value['value']; ?></span></label><br /> 
    596558        <?php endforeach; ?> 
    597559        </fieldset> 
     
    605567     * @return string Current value of the control_type setting 
    606568     */ 
    607     function get_control_type() 
    608     { 
    609         $options = get_option($this->options_name); 
     569    function get_control_type() { 
     570        $options = get_option( $this->options_name ); 
    610571        return $options['control_type']; 
    611572    } 
     
    617578     * @return string Current value of the sort_order setting 
    618579     */ 
    619     function get_sort_order() 
    620     { 
    621         $options = get_option($this->options_name); 
     580    function get_sort_order() { 
     581        $options = get_option( $this->options_name ); 
    622582        return $options['sort_order']; 
    623583    } 
     
    629589     * @return none 
    630590     */ 
    631     function add_quick_edit_action() 
    632     { 
     591    function add_quick_edit_action() { 
    633592        global $pagenow; 
    634593         
    635594        // Set up form elements in quick edit only on the edit-tags page 
    636         if($pagenow == 'edit-tags.php') 
    637             add_action('quick_edit_custom_box', array(&$this, 'quick_edit_custom_box'), 10, 3);  
     595        if ( $pagenow == 'edit-tags.php' ) 
     596            add_action( 'quick_edit_custom_box', array( &$this, 'quick_edit_custom_box' ), 10, 3 ); 
    638597    }    
    639598     
     
    645604     * @return array 
    646605     */ 
    647     function column_header($columns) 
    648     { 
    649         $columns['order'] = __('Order', $this->plugin_name); 
     606    function column_header( $columns ) { 
     607        $columns['order'] = __( 'Order', $this->plugin_name ); 
    650608        return $columns; 
    651609    } 
     
    658616     * @return array 
    659617     */ 
    660     function column_header_sortable($columns) 
    661     { 
     618    function column_header_sortable( $columns ) { 
    662619        $columns['order'] = 'order'; 
    663620        return $columns; 
     
    672629     * @return array 
    673630     */ 
    674     function order_clauses($clauses, $wp_query) 
    675     { 
     631    function order_clauses( $clauses, $wp_query ) { 
    676632        global $wpdb; 
    677633 
    678         if(isset($wp_query->query['orderby']) && 'order' == $wp_query->query['orderby'])  
    679         { 
     634        if ( isset( $wp_query->query['orderby'] ) && 'order' == $wp_query->query['orderby'] ) { 
    680635             
    681636            $clauses['join'] .= " 
     
    688643            $clauses['groupby'] = "object_id"; 
    689644            $clauses['orderby']  = "GROUP_CONCAT({$wpdb->terms}.name ORDER BY name ASC) "; 
    690             $clauses['orderby'] .= ( 'ASC' == strtoupper( $wp_query->get('order') ) ) ? 'ASC' : 'DESC'; 
     645            $clauses['orderby'] .= ( 'ASC' == strtoupper( $wp_query->get( 'order' ) ) ) ? 'ASC' : 'DESC'; 
    691646        } 
    692647         
     
    703658     * @return string Current value of the sort_order setting 
    704659     */ 
    705     function column_value($empty = '', $custom_column, $term_id)  
    706     { 
    707         return get_term_meta($term_id, 'tax-order', true);       
     660    function column_value( $empty = '', $custom_column, $term_id ) { 
     661        if ( 'order' == $custom_column ) 
     662            return get_term_meta( $term_id, 'tax-order', true ); 
     663        else 
     664            return $custom_column; 
    708665    } 
    709666     
     
    717674     * @return string Current value of the sort_order setting 
    718675     */ 
    719     function quick_edit_custom_box($column_name, $screen, $name) 
    720     {    
     676    function quick_edit_custom_box( $column_name, $screen, $name ) { 
    721677        // The link_category pages will cause this function to be called twice, outputting two separate fieldsets. 
    722678        // This statement keeps it from printing out the call for the "links" column. 
    723679        // This occurs because "links" is not considered a core column and thus, this filter runs on it  
    724680        // around line 359 of class-wp-terms-list-table.php 
    725         if($column_name == 'order') : 
     681        if ( $column_name == 'order' ) : 
    726682    ?> 
    727683        <fieldset><div class="inline-edit-col"> 
    728684            <label> 
    729                 <span class="title"><?php _e('Order'); ?></span> 
     685                <span class="title"><?php _e( 'Order' ); ?></span> 
    730686                <span class="input-text-wrap"><input type="text" name="tax-order" class="ptitle" value=""></span> 
    731687            </label> 
     
    736692 
    737693else : 
    738     exit(__('Class CustomTaxonomySort already exists.', 'custom-taxonomy-sort')); 
     694    exit(__( 'Class CustomTaxonomySort already exists.', 'custom-taxonomy-sort' ) ); 
    739695endif; 
    740696 
    741697// Instantiate the class 
    742698$CustomTaxonomySort = new CustomTaxonomySort(); 
    743 ?> 
  • custom-taxonomy-sort/trunk/readme.txt

    r433300 r473713  
    44Tags: taxonomy, category, sort 
    55Requires at least: 3.1 
    6 Tested up to: 3.2.1 
    7 Stable tag: 1.1.3 
     6Tested up to: 3.3 
     7Stable tag: 1.1.4 
    88 
    99Custom Taxonomy Sort allows you to explicitly control the sort order of all taxonomy terms. 
     
    6666== Changelog == 
    6767 
     68= 1.1.4 = 
     69* Fixed situation where the plugin will conflict with other changes to the term page columns. Thanks to DUCK__BOY1981. 
     70* Updated code to comply with WordPress coding standards 
     71 
    6872= 1.1.3 = 
    6973* Fixed a potential situation where the custom sort does not work with "get_the_term_list". Thanks to [@anointed](http://wordpress.org/support/topic/plugin-custom-taxonomy-sort-get_the_term_list-not-using-sort?replies=4) 
     
    9195== Upgrade Notice == 
    9296 
     97= 1.1.4 = 
     98Updated for 3.3 compatibility 
     99 
    93100= 1.1.3 = 
    94101Fixed issue where sort may not be applied in certain situations 
Note: See TracChangeset for help on using the changeset viewer.