Allow user to set custom order to a list of custom taxonomies?

I have a custom category checkbox on each individual bio attorney page that shows what practice areas these attorneys are involved in. Currently I have them sorting alphabetically. I am wondering if there is anyway to allow each attorney to set their own custom order when selecting their practice areas.

Here is a screenshot of the post:
https://www.dropbox.com/s/1si99a5elkmdwbr/Screen%20Shot%202013-02-14%20at%2011.50.02%20AM%20copy.png

Read More

UPDATE:

For those interested I figured it out.

I added this to my functions.php:

function set_the_terms_in_order ( $terms, $id, $taxonomy ) {
$terms = wp_cache_get( $id, "{$taxonomy}_relationships_sorted" );
if ( false === $terms ) {
    $terms = wp_get_object_terms( $id, $taxonomy, array( 'orderby' => 'term_order' ) );
    wp_cache_add($id, $terms, $taxonomy . '_relationships_sorted');
}
return $terms;
}
add_filter( 'get_the_terms', 'set_the_terms_in_order' , 10, 4 );

function do_the_terms_in_order () {
    global $wp_taxonomies;  //fixed missing semicolon
    // the following relates to tags, but you can add more lines like this for any taxonomy
    $wp_taxonomies['post_tag']->sort = true;
    $wp_taxonomies['post_tag']->args = array( 'orderby' => 'term_order' );    
}
add_action( 'init', 'do_the_terms_in_order');

then when I register my taxonomy I set:

'hierarchical' => false,        
'orderby' => 'term_order'

CREDIT: http://wordpress.kdari.net/2011/07/listing-tags-in-custom-order.html

Related posts

Leave a Reply

1 comment

  1. For those interested I figured it out.

    I added this to my functions.php:

    function set_the_terms_in_order ( $terms, $id, $taxonomy ) {
    $terms = wp_cache_get( $id, "{$taxonomy}_relationships_sorted" );
    if ( false === $terms ) {
        $terms = wp_get_object_terms( $id, $taxonomy, array( 'orderby' => 'term_order' ) );
        wp_cache_add($id, $terms, $taxonomy . '_relationships_sorted');
    }
    return $terms;
    }
    add_filter( 'get_the_terms', 'set_the_terms_in_order' , 10, 4 );
    
    function do_the_terms_in_order () {
        global $wp_taxonomies;  //fixed missing semicolon
        // the following relates to tags, but you can add more lines like this for any taxonomy
        $wp_taxonomies['post_tag']->sort = true;
        $wp_taxonomies['post_tag']->args = array( 'orderby' => 'term_order' );    
    }
    add_action( 'init', 'do_the_terms_in_order');
    

    then when I register my taxonomy I set:

    'hierarchical' => false,        
    'orderby' => 'term_order'
    

    CREDIT: http://wordpress.kdari.net/2011/07/listing-tags-in-custom-order.html