8, 'largest' => 22, 'unit' => 'pt', 'number' => 45, 'format' => 'flat', 'orderby' => 'name', 'order' => 'ASC', 'exclude' => '', 'include' => '' ); $args = wp_parse_args( $args, $defaults ); $tags = get_tags( array_merge($args, array('orderby' => 'count', 'order' => 'DESC')) ); // Always query top tags if ( empty($tags) ) return; $return = core_header_tag_cloud( $tags, $args ); // Here's where those top tags get sorted according to $args if ( is_wp_error( $return ) ) return false; else echo apply_filters( 'dropdown_tag_cloud', $return, $args ); } function core_header_tag_cloud( $tags, $args = '' ) { $largest = null; $smallest = null; $orderby = null; $order = null; $format = null; global $wp_rewrite; $defaults = array( 'smallest' => 8, 'largest' => 22, 'unit' => 'pt', 'number' => 45, 'format' => 'flat', 'orderby' => 'name', 'order' => 'ASC' ); $args = wp_parse_args( $args, $defaults ); extract($args); if ( !$tags ) return; $counts = $tag_links = array(); foreach ( (array) $tags as $tag ) { $counts[$tag->name] = $tag->count; $tag_links[$tag->name] = get_tag_link( $tag->term_id ); if ( is_wp_error( $tag_links[$tag->name] ) ) return $tag_links[$tag->name]; $tag_ids[$tag->name] = $tag->term_id; } $min_count = min($counts); $spread = max($counts) - $min_count; if ( $spread <= 0 ) $spread = 1; $font_spread = $largest - $smallest; if ( $font_spread <= 0 ) $font_spread = 1; $font_step = $font_spread / $spread; // SQL cannot save you; this is a second (potentially different) sort on a subset of data. if ( 'name' == $orderby ) uksort($counts, 'strnatcasecmp'); else asort($counts); if ( 'DESC' == $order ) $counts = array_reverse( $counts, true ); $a = array(); $rel = ( is_object($wp_rewrite) && $wp_rewrite->using_permalinks() ) ? ' rel="tag"' : ''; foreach ( $counts as $tag => $count ) { $tag_id = $tag_ids[$tag]; $tag_link = esc_url($tag_links[$tag]); $tag = str_replace(' ', ' ', esc_html( $tag )); $a[] = "\t"; } switch ( $format ) : case 'array' : $return =& $a; break; case 'list' : $return = "\n"; break; default : $return = implode("\n", $a); break; endswitch; return apply_filters( 'core_header_tag_cloud', $return, $tags, $args ); } //---------------- Custom Excerpts Function ----------------// function wptouch_trim_excerpt($text) { $raw_excerpt = $text; if ( '' == $text ) { $text = get_the_content(''); $text = strip_shortcodes( $text ); $text = apply_filters('the_content', $text); $text = str_replace(']]>', ']]>', $text); $text = strip_tags($text); $excerpt_length = apply_filters('excerpt_length', 30); $words = explode(' ', $text, $excerpt_length + 1); if (count($words) > $excerpt_length) { array_pop($words); array_push($words, '...'); $text = implode(' ', $words); $text = force_balance_tags( $text ); } } return apply_filters('wptouch_trim_excerpt', $text, $raw_excerpt); } remove_filter('get_the_excerpt', 'wp_trim_excerpt'); add_filter('get_the_excerpt', 'wptouch_trim_excerpt'); /** * Force 3 column maximum in the default gallery shortcode * * @param array $atts Combined and filtered attribute list. * @return array The filtered attribute list. */ function wptouch_gallery_atts( $atts ) { if ( $atts['columns'] > 3 ) { $atts['columns'] = 3; } return $atts; } add_filter( 'shortcode_atts_gallery', 'wptouch_gallery_atts' ); function wptouch_parse_ajax_comments_request( $wp ) { if ( array_key_exists( 'wptouch', $wp->query_vars ) && $wp->query_vars['wptouch'] == 'ajax-comments-handler' ) include dirname( __FILE__ ) . '/comments-ajax.php'; } add_action('parse_request', 'wptouch_parse_ajax_comments_request'); function wptouch_query_vars($vars) { $vars[] = 'wptouch'; return $vars; } add_filter('query_vars', 'wptouch_query_vars');