function add_taxonomy_filters() {

        global $typenow;
        global $wp_query;

        // Must set this to the post type you want the filter(s) displayed on.
        if ( $typenow == $this->post_type_name ) {

            // if custom filters are defined use those
            if ( is_array( $this->filters ) ) {

                $filters = $this->filters;

            // else default to use all taxonomies associated with the post
            } else {

                $filters = $this->taxonomies;
            }

            if ( ! empty( $filters ) ) {

                // Foreach of the taxonomies we want to create filters for...
                foreach ( $filters as $tax_slug ) {

                    // ...object for taxonomy, doesn't contain the terms.
                    $tax = get_taxonomy( $tax_slug );

                    // Get taxonomy terms and order by name.
                    $args = array(
                        'orderby' => 'name',
                        'hide_empty' => false
                    );

                    // Get taxonomy terms.
                    $terms = get_terms( $tax_slug, $args );

                    // If we have terms.
                    if ( $terms ) {

                        // Set up select box.
                        printf( ' &nbsp;<select name="%s" class="postform">', $tax_slug );

                        // Default show all.
                        printf( '<option value="0">%s</option>', sprintf( __( 'Show all %s', $this->textdomain ), $tax->label ) );

                        // Foreach term create an option field...
                        foreach ( $terms as $term ) {

                            // ...if filtered by this term make it selected.
                            if ( isset( $_GET[ $tax_slug ] ) && $_GET[ $tax_slug ] === $term->slug ) {

                                printf( '<option value="%s" selected="selected">%s (%s)</option>', $term->slug, $term->name, $term->count );

                            // ...create option for taxonomy.
                            } else {

                                printf( '<option value="%s">%s (%s)</option>', $term->slug, $term->name, $term->count );
                            }
                        }
                        // End the select field.
                        print( '</select>&nbsp;' );
                    }
                }
            }
        }
    }
function add_taxonomy_filters() {

        global $typenow;
        global $wp_query;

        // Must set this to the post type you want the filter(s) displayed on.
        if ( $typenow == $this->post_type_name ) {

            // if custom filters are defined use those
            if ( is_array( $this->filters ) ) {

                $filters = $this->filters;

            // else default to use all taxonomies associated with the post
            } else {

                $filters = $this->taxonomies;
            }

            if ( ! empty( $filters ) ) {

                // Foreach of the taxonomies we want to create filters for...
                foreach ( $filters as $tax_slug ) {

                    // ...object for taxonomy, doesn't contain the terms.
                    $tax = get_taxonomy( $tax_slug );

                    // Get taxonomy terms and order by name.
                    $args = array(
                        'orderby' => 'name',
                        'hide_empty' => false
                    );

                    // Get taxonomy terms.
                    $terms = get_terms( $tax_slug, $args );

                    // If we have terms.
                    if ( $terms ) {

                        // Set up select box.
                        printf( ' &nbsp;<select name="%s" class="postform">', $tax_slug );

                        // Default show all.
                        printf( '<option value="0">%s</option>', sprintf( __( 'Show all %s', $this->textdomain ), $tax->label ) );

                        // Foreach term create an option field...
                        foreach ( $terms as $term ) {

                            // ...if filtered by this term make it selected.
                            if ( isset( $_GET[ $tax_slug ] ) && $_GET[ $tax_slug ] === $term->slug ) {

                                printf( '<option value="%s" selected="selected">%s (%s)</option>', $term->slug, $term->name, $term->count );

                            // ...create option for taxonomy.
                            } else {

                                printf( '<option value="%s">%s (%s)</option>', $term->slug, $term->name, $term->count );
                            }
                        }
                        // End the select field.
                        print( '</select>&nbsp;' );
                    }
                }
            }
        }
    }
function add_taxonomy_filters ( ) { global $ typenow ; global $ wp_query ; // Must set this to the post type you want the filter(s) displayed on. if ( $ typenow == $ this -> post_type_name ) { // if custom filters are defined use those if ( is_array ( $ this -> filters ) ) { $ filters = $ this -> filters ; // else default to use all taxonomies associated with the post } else { $ filters = $ this -> taxonomies ; } if ( ! empty ( $ filters ) ) { // Foreach of the taxonomies we want to create filters for... foreach ( $ filters as $ tax_slug ) { // ...object for taxonomy, doesn't contain the terms. $ tax = get_taxonomy ( $ tax_slug ) ; // Get taxonomy terms and order by name. $ args = array ( 'orderby' => 'name' , 'hide_empty' => false ) ; // Get taxonomy terms. $ terms = get_terms ( $ tax_slug , $ args ) ; // If we have terms. if ( $ terms ) { // Set up select box. printf ( ' &nbsp;<select name="%s" class="postform">' , $ tax_slug ) ; // Default show all. printf ( '<option value="0">%s</option>' , sprintf ( __ ( 'Show all %s' , $ this -> textdomain ) , $ tax -> label ) ) ; // Foreach term create an option field... foreach ( $ terms as $ term ) { // ...if filtered by this term make it selected. if ( isset ( $ _GET [ $ tax_slug ] ) && $ _GET [ $ tax_slug ] === $ term -> slug ) { printf ( '<option value="%s" selected="selected">%s (%s)</option>' , $ term -> slug , $ term -> name , $ term -> count ) ; // ...create option for taxonomy. } else { printf ( '<option value="%s">%s (%s)</option>' , $ term -> slug , $ term -> name , $ term -> count ) ; } } // End the select field. print ( '</select>&nbsp;' ) ; } } } } }
Add taxtonomy filters

Creates select fields for filtering posts by taxonomies on admin edit screen.
Add taxtonomy filters