get_category_by_slug()
Получает данные категории по её альтернативному названию (слагу).
Работает на основе: get_term_by(), _make_cat_compat()
1 раз — 0.004096 сек (очень медленно) | 50000 раз — 4.40 сек (быстро) | PHP 8.2.25, WP 6.8.1
Хуков нет.
Возвращает
Объект|false. Данные категории.
Использование
get_category_by_slug( $slug );
- $slug(строка) (обязательный)
- Альтернативное название категории. Название которое используется в URL.
Примеры
#1 Как выглядит возвращаемый объект
$cat = get_category_by_slug( 'codex' ); /* WP_Term Object ( [term_id] => 37 [name] => Кодекс [slug] => codex [term_group] => 0 [term_taxonomy_id] => 37 [taxonomy] => category [description] => В этой рубрике собраны статьи [parent] => 3 [count] => 41 [filter] => raw [term_order] => 1 [cat_ID] => 37 [category_count] => 41 [category_description] => В этой рубрике собраны статьи [cat_name] => Кодекс [category_nicename] => codex [category_parent] => 3 ) */
#2 Получим ID категории, передав функции её ярлык
$cat = get_category_by_slug('category-name');
$id = $cat->term_id;
Переменная $cat будет содержать в себе следующие данные:
// ID категории $cat->cat_ID // Название категории $cat->cat_name // Альтернативное название категории $cat->category_nicename // Описание категории (задается на странице редактирования категории) $cat->category_description // ID родительской категории $cat->category_parent // Количество записей в категории $cat->category_count
Список изменений
| С версии 2.3.0 | Введена. |
Код get_category_by_slug() get category by slug WP 7.0
function get_category_by_slug( $slug ) {
$category = get_term_by( 'slug', $slug, 'category' );
if ( $category ) {
_make_cat_compat( $category );
}
return $category;
}