Метод 1: использование функции get_the_tags()get_the_tags()
$tags = get_the_tags($post_id);
if ($tags) {
foreach ($tags as $tag) {
echo $tag->name;
}
}
Метод 2: использование запросов таксономии
WordPress предоставляет мощную систему запросов, которая позволяет извлекать сообщения на основе различных критериев, включая таксономию. Вы можете использовать класс WP_Queryи указать параметр таксономии для получения тегов для произвольного типа сообщений. Рассмотрим следующий фрагмент кода:
$args = array(
'post_type' => 'your_custom_post_type',
'tax_query' => array(
array(
'taxonomy' => 'post_tag',
'field' => 'slug',
'terms' => 'your_tag_slug',
),
),
);
$query = new WP_Query($args);
if ($query->have_posts()) {
while ($query->have_posts()) {
$query->the_post();
// Display post content or perform other operations
}
}
wp_reset_postdata();
Метод 3: создание пользовательской таксономии для тегов
Другой подход — создать пользовательскую таксономию специально для вашего пользовательского типа сообщений. Это дает вам больше контроля над тегами, связанными с вашим произвольным типом публикации. Вот пример того, как вы можете зарегистрировать собственную таксономию и связать ее со своим произвольным типом публикации:
function custom_taxonomy() {
$args = array(
'labels' => array(
'name' => 'Custom Tags',
),
'public' => true,
'show_ui' => true,
'show_admin_column' => true,
'hierarchical' => false,
);
register_taxonomy('custom_tags', 'your_custom_post_type', $args);
}
add_action('init', 'custom_taxonomy');
После создания пользовательской таксономии вы можете назначать теги публикациям произвольного типа с помощью интерфейса администратора WordPress.
Получение тегов для пользовательских типов записей в WordPress можно выполнить различными способами. Вы можете использовать функцию get_the_tags(), выполнять запросы таксономии с помощью WP_Queryили создавать собственную таксономию специально для вашего типа сообщений. Выберите метод, который лучше всего соответствует вашим требованиям и расширяет функциональность вашего веб-сайта WordPress.