get_terms_orderby хук-фільтрWP 2.8.0

Фільтруємо частину SQL запиту відповідає за колонку сортування функції wp_list_categories() .

Використання

function filter_function_name_11( $orderby, $args, $taxonomies ) {
	// Фільтр...

	return $orderby;
}
add_filter( 'get_terms_orderby', 'filter_function_name_11');
$orderby
(рядок)
Частина запиту виглядає так при сортуванні по колонці name:
t.nameабо
е.slug.
$args
(масив)
Масив аргументів передано у функцію get_terms().
$taxonomies
(рядок/масив)
Назва таксономій переданих у get_terms()

Приклади

0

#1 Сортування категорій

Припустимо, що для сортування категорій вказує на початок складу (альтернативної назви) кожної категорії цифру. Тепер, якщо ми вкажемо параметр orderby=slug у функції get_terms(), то отримаємо таке сортування 1, 10, 2, 3… а треба 1, 2, 3…9, 10. Щоб це виправити можна змінити частину SQL запиту:

// встановлюємо фільтр
add_filter('get_terms_orderby', 'sort_terms_clause', 10, 3);
function sort_terms_clause( $orderby, $args, $taxonomies ){
	return 't.slug+0';
}

// отримуємо рубрики
$terms = get_terms('category', array('hide_empty=0') );
foreach( $terms as $term ){
	// виводимо рубрики, тут буде потрібне нам сортування
}

// видаляємо фільтр
remove_filter('get_terms_orderby', 'sort_terms_clause', 10);

список змін

З версії 2.8.0Введено.

Де викликається хук

get_terms_orderby

Де використовується хук у WordPress

Використання не знайдено.

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *