get_categories()

19 февраля, 2025
Получение и фильтрация категорий WordPress с помощью функции get_categories(): параметры, примеры, безопасность
Быстрая навигация по записи

Описание функции get_categories()

Функция get_categories() получает список категорий WordPress с возможностью фильтрации и сортировки. Она позволяет получить как все категории, так и категории с определенными параметрами. Функция поддерживает иерархическую структуру категорий, различные способы сортировки (по имени, ID, количеству записей) и фильтрацию (пустые/непустые категории, родительские/дочерние).

Результаты возвращаются в виде массива объектов WP_Term, что обеспечивает удобный доступ к свойствам категорий, таким как название, описание, количество записей и мета-данные

Параметры

$args

Тип: array

Обязательный: Нет

По умолчанию: array()

Описание: Массив аргументов для получения категорий

Возможные значения:

type: category, link_category, post_tag, nav_menu

orderby: name, id, slug, count, term_group

order: ASC, DESC

hide_empty: 1,

parent: ID родительской категории

hierarchical: 1,

child_of: ID родительской категории

Возвращаемое значение

Тип: array

Описание: Массив объектов WP_Term, представляющих категории

Возможные значения:

• Массив объектов WP_Term при успешном выполнении

• Пустой массив если категории не найдены

• WP_Error в случае ошибки

Примеры использования

Базовый пример получения всех категорий

				
					$categories = get_categories();
foreach($categories as $category) {
    echo $category->name.', ';
}
				
			

Новости, Статьи, Обзоры,

Получение непустых категорий, отсортированных по имени

				
					$args = array(
    'orderby' => 'name',
    'order' => 'ASC',
    'hide_empty' => true
);
$categories = get_categories($args);
				
			

hide_empty=true исключает категории без записей

Проверка на наличие ошибок при получении категорий

				
					$categories = get_categories();
if (is_wp_error($categories)) {
    echo 'Ошибка: ' . $categories->get_error_message();
}
else {
    foreach($categories as $category) {
        echo $category->name . ', ';
    }
}
				
			

Выводит сообщение об ошибке, если запрос не удался

Получение популярных категорий для отображения в списке

				
					$args = array(
    'orderby' => 'count',
    'order' => 'DESC'
);
$categories = get_categories($args);
foreach($categories as $category) {
    echo '<li>' . esc_html($category->name) . ' (' . $category->count . ')</li>';
}
				
			

Список категорий, отсортированных по количеству записей

Безопасность

Валидация входных данных: Все параметры проходят валидацию внутри функции

Санитизация: Параметры автоматически очищаются WordPress

Рекомендации: При выводе данных используйте esc_html() для названий категорий

— Связанные функции

Получает одну категорию по ID

Получает категории конкретной записи

— Хуки

Фильтрует аргументы перед запросом категорий

Фильтрует результаты после получения категорий

— Примечания

– Ограничения

Возвращает только публичные категории по умолчанию

– Частые проблемы

  • Пустой результат при неправильных параметрах
  • Проблемы с иерархией при неверных настройках parent/child_of

Оставить комментарий

Нужна помощь с WordPress WooCommerce плагинами темой оптимизацией ?

Упрощаем сложное, создаем впечатляющее!
100% без риска
Нет обязательств по найму
Бесплатная оценка
5900 ₽
Система аренды
Шаблон сайта аренды спецтехники или строительного оборудования. Этот шаблон помогает создать функциональный ресурс, где пользователи могут легко арендовать оборудование для строительства

Поможем вывести Ваш бизнес на новый уровень!

Проснувшись однажды утром после беспокойного сна, Грегор Замза обнаружил

Добро пожаловать!

Авторизуйтесь, чтобы продолжить

или

Забыли пароль? Восстановить

* Если аккунта у Вас еще нет, то он будет создан автоматически.

* Отправляя данные, вы соглашаетесь с политикой конфиденциальности.

Давайте составим техническое задание!
100% без риска
Нет обязательств по найму
Бесплатная оценка стоимости
Здравствуйте! Я асистент на основе искусственного интеллекта. Вы можете общаться со мной, как с человеком — задавайте вопросы, описывайте свои идеи и требования.

С удовольствием помогу вам составить техническое задание для вашего WordPress проекта. Если Вам нужна техническая поддержка по купленному у нас плагину или шаблону, то создайте тикет в личном кабинете.

Выберите подходящий вариант или опишите свою задачу в свободной форме, и я помогу вам составить четкий план действий, для оценки стоимости нашими разработчиками! 😊