Вопрос или проблема
например: у меня есть пост с названием “Компьютер и электроника”, и этот пост состоит из двух категорий: 1. LED дисплеи 2. Мобильные устройства. Теперь я хочу отобразить пост = “Компьютер и электроника” с его конкретными категориями.
Вы можете использовать функцию single_cat_title, чтобы получить название категории.
Полезно для файлов шаблонов категорий для отображения названия страницы категории. Префикс автоматически не ставит пробел между префиксом, так что, если нужен пробел, параметр должен содержать его в конце.
Для этой цели вам нужно использовать функцию get_the_category($id), которая принимает id поста в качестве параметра и возвращает список объектов терминов, присвоенных переданному id поста. Вы можете обратиться к этому URL, чтобы узнать больше.
https://developer.wordpress.org/reference/functions/get_the_category/
Ответ или решение
Чтобы отобразить категории для конкретного поста, необходимо воспользоваться функциями WordPress, которые позволяют извлечь и отобразить информацию о категориях, связанных с данным постом. Давайте рассмотрим, как можно реализовать эту задачу, используя доступные функции платформы WordPress.
Теория:
В WordPress каждая запись может быть отнесена к одним или нескольким категориям. Для получения категорий, связанных с конкретным постом, можно использовать функцию get_the_category()
, которая возвращает массив объектов категорий для указанного ID поста. После получения этих данных, их можно использовать для отображения на веб-странице соответствующих названий категорий.
Пример:
Рассмотрим пост с названием "Компьютеры и электроника", который отнесен к двум категориям: "LED дисплеи" и "Мобильные устройства". Используя функцию get_the_category($id)
, где $id
— это идентификатор поста, мы можем получить массив всех категорий, связанных с данным постом.
Применение:
- В первую очередь, убедитесь, что у вас есть ID поста, который вы хотите отобразить. Предположим, это ID = 101.
-
Используя PHP в шаблоне вашей темы, напишите следующий код:
<?php $post_id = 101; // Замените 101 на ID вашего поста $categories = get_the_category($post_id); if (!empty($categories)) { echo '<ul>'; foreach ($categories as $category) { echo '<li>' . esc_html($category->name) . '</li>'; } echo '</ul>'; } else { echo 'Категории не найдены'; } ?>
Этот код создаст список, который отображает все категории, связанные с выбранным постом. Функция esc_html()
используется для безопасного вывода имен категорий, чтобы избежать потенциальных проблем с безопасностью.
Таким образом, применив вышеописанный метод, вы сможете эффективно выводить категории, соответствующие определенному посту, прямо на страницах вашего веб-сайта. Это не только улучшит организацию контента, но и позволит пользователям легче ориентироваться по интересам.