Изучение различных методов получения текущего фрагмента категории в WordPress

В WordPress ярлык категории относится к части URL-адреса, которая идентифицирует определенную категорию. Получение текущего ярлыка категории может быть полезно во многих сценариях, например при настройке шаблонов категорий или создании пользовательских меню навигации. В этой статье мы рассмотрим несколько методов получения текущего фрагмента категории в WordPress на примерах кода.

Метод 1. Использование глобальной переменной $wp_query

$current_category = $wp_query->get_queried_object();
$current_category_slug = $current_category->slug;

Объяснение: Глобальная переменная $wp_queryсодержит текущую информацию запроса WordPress. Обращаясь к методу get_queried_object(), мы можем получить текущий объект категории. Отсюда мы можем получить доступ к свойству slug, чтобы получить ярлык категории.

Метод 2: использование функции get_query_var()

$current_category_slug = get_query_var('category_name');

Объяснение: Функция get_query_var()позволяет нам получить определенную переменную из запроса WordPress. Передав 'category_name'в качестве параметра, мы можем получить ярлык текущей категории.

Метод 3: использование функции get_category()

$current_category = get_category(get_query_var('cat'));
$current_category_slug = $current_category->slug;

Объяснение: Функция get_category()извлекает объект категории на основе предоставленного идентификатора категории. В этом методе мы используем get_query_var('cat')для получения текущего идентификатора категории, а затем используем get_category()для получения объекта категории. Наконец, мы обращаемся к свойству slug, чтобы получить ярлык категории.

Метод 4. Использование функции get_queried_object_id()

$current_category_id = get_queried_object_id();
$current_category = get_category($current_category_id);
$current_category_slug = $current_category->slug;

Объяснение: Функция get_queried_object_id()возвращает идентификатор текущего запрошенного объекта. Передав этот идентификатор функции get_category(), мы можем получить соответствующий объект категории и получить доступ к его свойству slug, чтобы получить фрагмент категории.

Метод 5. Использование функции get_categories()

$categories = get_categories();
$current_category_id = get_queried_object_id();
foreach ($categories as $category) {
    if ($category->cat_ID === $current_category_id) {
        $current_category_slug = $category->slug;
        break;
    }
}

Объяснение: Функция get_categories()извлекает массив объектов категорий. Мы перебираем этот массив и сравниваем идентификатор категории с текущим идентификатором категории, полученным из get_queried_object_id(). Как только мы найдем совпадение, мы сможем получить доступ к свойству slug, чтобы получить ярлык текущей категории.

В этой статье мы рассмотрели несколько методов получения текущей категории в WordPress. Эти методы обеспечивают гибкость и могут использоваться в различных сценариях для настройки шаблонов категорий, создания пользовательских меню навигации или выполнения других задач, специфичных для категорий. Используя предоставленные примеры кода, вы можете легко получить текущий фрагмент категории в своих проектах WordPress.