Используйте фильтр
terms_clauses
и свой произвольный аргумент
letter
:
function get_terms_fields( $clauses, $taxonomies, $args ) {
if ( ! empty( $args['letter'] ) ) {
global $wpdb;
$letter_like = $wpdb->esc_like( $args['letter'] );
if ( ! isset( $clauses['where'] ) )
$clauses['where'] = '1=1';
$clauses['where'] .= $wpdb->prepare( " AND t.name LIKE %s", "$letter_like%" );
}
return $clauses;
}
add_filter( 'terms_clauses', 'get_terms_fields', 10, 3 );
Использовать как-то так:
get_terms( 'my_taxonomy', 'letter=Ё' );