joh*_*ith 0 php wordpress custom-post-type
我有一个名为“football_teams”的自定义帖子类型,它有 20 个帖子。
// WP_Query arguments
$args = array(
'post_type' => 'football_teams',
'posts_per_page' => '-1'
);
// The Query
$query = new WP_Query( $args );
Run Code Online (Sandbox Code Playgroud)
我如何获得 CPT 中所有这些帖子的类别。
我试过了,$cats = get_categories();但它显示了所有帖子的所有类别。
我也试过$cats = get_categories($args);但没有奏效。
任何帮助将不胜感激,我是网络开发的新手。
小智 6
您可以简单地使用get_the_terms()函数来获取术语(类别)名称。您可以使用下面的代码。注意:这$taxonomy是您的自定义分类法。如果您不使用自定义分类法,那么它将是category.
<?php
$post_type = 'your post type';
$taxonomy = 'your taxonomy';
$args = [
'post_type' => $post_type,
'posts_per_page' => -1
];
$query = new WP_Query($args);
if( $query->have_posts() ) {
while( $query->have_posts() ) {
$query->the_post();
$terms = get_the_terms($post->ID, $taxonomy);
$categories = [];
if( $terms ) {
foreach ($terms as $category) {
$categories[] = $category->name;
}
}
$categories = implode(', ', $categories);
echo get_the_title() .'| '. $categories .' <br>';
}
}
Sample output:
my post 1 | category1, category2, category3
my post 2 | category2, category4, category5
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3414 次 |
| 最近记录: |